1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2021, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2022, Linaro Limited
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
11 #include <dt-bindings/spmi/spmi.h>
13 #include "sa8540p.dtsi"
14 #include "sa8540p-pmics.dtsi"
17 model = "Qualcomm SA8295P ADP";
18 compatible = "qcom,sa8295p-adp", "qcom,sa8540p";
25 stdout-path = "serial0:115200n8";
29 compatible = "dp-connector";
33 hpd-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>;
36 dp2_connector_in: endpoint {
37 remote-endpoint = <&mdss1_dp0_phy_out>;
43 compatible = "dp-connector";
47 hpd-gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>;
50 dp3_connector_in: endpoint {
51 remote-endpoint = <&mdss1_dp1_phy_out>;
57 compatible = "dp-connector";
61 hpd-gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>;
64 edp0_connector_in: endpoint {
65 remote-endpoint = <&mdss0_dp2_phy_out>;
71 compatible = "dp-connector";
75 hpd-gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>;
78 edp1_connector_in: endpoint {
79 remote-endpoint = <&mdss0_dp3_phy_out>;
85 compatible = "dp-connector";
89 hpd-gpios = <&tlmm 7 GPIO_ACTIVE_HIGH>;
92 edp2_connector_in: endpoint {
93 remote-endpoint = <&mdss1_dp2_phy_out>;
99 compatible = "dp-connector";
103 hpd-gpios = <&tlmm 6 GPIO_ACTIVE_HIGH>;
106 edp3_connector_in: endpoint {
107 remote-endpoint = <&mdss1_dp3_phy_out>;
113 gpu_mem: gpu-mem@8bf00000 {
114 reg = <0 0x8bf00000 0 0x2000>;
122 compatible = "qcom,pm8150-rpmh-regulators";
126 regulator-name = "vreg_l3a";
127 regulator-min-microvolt = <1200000>;
128 regulator-max-microvolt = <1208000>;
129 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
133 regulator-name = "vreg_l5a";
134 regulator-min-microvolt = <912000>;
135 regulator-max-microvolt = <912000>;
136 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
140 regulator-name = "vreg_l7a";
141 regulator-min-microvolt = <1800000>;
142 regulator-max-microvolt = <1800000>;
143 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
147 regulator-name = "vreg_l13a";
148 regulator-min-microvolt = <3072000>;
149 regulator-max-microvolt = <3072000>;
150 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
154 regulator-name = "vreg_l11a";
155 regulator-min-microvolt = <880000>;
156 regulator-max-microvolt = <880000>;
157 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
162 compatible = "qcom,pm8150-rpmh-regulators";
166 regulator-name = "vreg_l1c";
167 regulator-min-microvolt = <912000>;
168 regulator-max-microvolt = <912000>;
169 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
173 regulator-name = "vreg_l2c";
174 regulator-min-microvolt = <3072000>;
175 regulator-max-microvolt = <3072000>;
176 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
180 regulator-name = "vreg_l3c";
181 regulator-min-microvolt = <1200000>;
182 regulator-max-microvolt = <1200000>;
183 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
184 regulator-allow-set-load;
185 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
186 RPMH_REGULATOR_MODE_HPM>;
190 regulator-name = "vreg_l4c";
191 regulator-min-microvolt = <1200000>;
192 regulator-max-microvolt = <1208000>;
193 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
197 regulator-name = "vreg_l6c";
198 regulator-min-microvolt = <1200000>;
199 regulator-max-microvolt = <1200000>;
200 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
201 regulator-allow-set-load;
202 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
203 RPMH_REGULATOR_MODE_HPM>;
207 regulator-name = "vreg_l7c";
208 regulator-min-microvolt = <1800000>;
209 regulator-max-microvolt = <1800000>;
210 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
214 regulator-name = "vreg_l10c";
215 regulator-min-microvolt = <2504000>;
216 regulator-max-microvolt = <2504000>;
217 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
218 regulator-allow-set-load;
219 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
220 RPMH_REGULATOR_MODE_HPM>;
224 regulator-name = "vreg_l17c";
225 regulator-min-microvolt = <2504000>;
226 regulator-max-microvolt = <2504000>;
227 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
228 regulator-allow-set-load;
229 regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
230 RPMH_REGULATOR_MODE_HPM>;
235 compatible = "qcom,pm8150-rpmh-regulators";
239 regulator-name = "vreg_l3g";
240 regulator-min-microvolt = <1200000>;
241 regulator-max-microvolt = <1200000>;
242 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
246 regulator-name = "vreg_l7g";
247 regulator-min-microvolt = <1800000>;
248 regulator-max-microvolt = <1800000>;
249 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
253 regulator-name = "vreg_l8g";
254 regulator-min-microvolt = <912000>;
255 regulator-max-microvolt = <912000>;
256 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
260 regulator-name = "vreg_l11g";
261 regulator-min-microvolt = <912000>;
262 regulator-max-microvolt = <912000>;
263 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
277 pinctrl-0 = <&qup1_i2c4_state>;
278 pinctrl-names = "default";
282 vdd_gfx: regulator@39 {
283 compatible = "maxim,max20411";
286 regulator-min-microvolt = <800000>;
287 regulator-max-microvolt = <800000>;
289 enable-gpios = <&pmm8540a_gpios 2 GPIO_ACTIVE_HIGH>;
291 pinctrl-0 = <&max20411_en>;
292 pinctrl-names = "default";
297 vdd-gfx-supply = <&vdd_gfx>;
309 memory-region = <&gpu_mem>;
310 firmware-name = "qcom/sa8295p/a690_zap.mbn";
323 data-lanes = <0 1 2 3>;
330 mdss0_dp2_phy_out: endpoint {
331 remote-endpoint = <&edp0_connector_in>;
338 vdda-phy-supply = <&vreg_l8g>;
339 vdda-pll-supply = <&vreg_l3g>;
345 data-lanes = <0 1 2 3>;
352 mdss0_dp3_phy_out: endpoint {
353 remote-endpoint = <&edp1_connector_in>;
360 vdda-phy-supply = <&vreg_l8g>;
361 vdda-pll-supply = <&vreg_l3g>;
371 data-lanes = <0 1 2 3>;
378 mdss1_dp0_phy_out: endpoint {
379 remote-endpoint = <&dp2_connector_in>;
386 vdda-phy-supply = <&vreg_l11g>;
387 vdda-pll-supply = <&vreg_l3g>;
393 data-lanes = <0 1 2 3>;
400 mdss1_dp1_phy_out: endpoint {
401 remote-endpoint = <&dp3_connector_in>;
408 vdda-phy-supply = <&vreg_l11g>;
409 vdda-pll-supply = <&vreg_l3g>;
415 data-lanes = <0 1 2 3>;
422 mdss1_dp2_phy_out: endpoint {
423 remote-endpoint = <&edp2_connector_in>;
430 vdda-phy-supply = <&vreg_l11g>;
431 vdda-pll-supply = <&vreg_l3g>;
437 data-lanes = <0 1 2 3>;
444 mdss1_dp3_phy_out: endpoint {
445 remote-endpoint = <&edp3_connector_in>;
452 vdda-phy-supply = <&vreg_l11g>;
453 vdda-pll-supply = <&vreg_l3g>;
459 perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
460 wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
462 pinctrl-names = "default";
463 pinctrl-0 = <&pcie2a_default>;
469 vdda-phy-supply = <&vreg_l11a>;
470 vdda-pll-supply = <&vreg_l3a>;
478 perst-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>;
479 wake-gpios = <&tlmm 56 GPIO_ACTIVE_LOW>;
481 pinctrl-names = "default";
482 pinctrl-0 = <&pcie3a_default>;
488 vdda-phy-supply = <&vreg_l11a>;
489 vdda-pll-supply = <&vreg_l3a>;
495 perst-gpios = <&tlmm 153 GPIO_ACTIVE_LOW>;
496 wake-gpios = <&tlmm 130 GPIO_ACTIVE_LOW>;
498 pinctrl-names = "default";
499 pinctrl-0 = <&pcie3b_default>;
505 vdda-phy-supply = <&vreg_l11a>;
506 vdda-pll-supply = <&vreg_l3a>;
512 perst-gpios = <&tlmm 141 GPIO_ACTIVE_LOW>;
513 wake-gpios = <&tlmm 139 GPIO_ACTIVE_LOW>;
515 pinctrl-names = "default";
516 pinctrl-0 = <&pcie4_default>;
522 vdda-phy-supply = <&vreg_l11a>;
523 vdda-pll-supply = <&vreg_l3a>;
537 firmware-name = "qcom/sa8540p/adsp.mbn";
542 firmware-name = "qcom/sa8540p/cdsp.mbn";
547 firmware-name = "qcom/sa8540p/cdsp1.mbn";
552 compatible = "qcom,geni-debug-uart";
557 reset-gpios = <&tlmm 228 GPIO_ACTIVE_LOW>;
559 vcc-supply = <&vreg_l17c>;
560 vcc-max-microamp = <800000>;
561 vccq-supply = <&vreg_l6c>;
562 vccq-max-microamp = <900000>;
568 vdda-phy-supply = <&vreg_l8g>;
569 vdda-pll-supply = <&vreg_l3g>;
575 reset-gpios = <&tlmm 229 GPIO_ACTIVE_LOW>;
577 vcc-supply = <&vreg_l10c>;
578 vcc-max-microamp = <800000>;
579 vccq-supply = <&vreg_l3c>;
580 vccq-max-microamp = <900000>;
586 vdda-phy-supply = <&vreg_l8g>;
587 vdda-pll-supply = <&vreg_l3g>;
597 /* TODO: Define USB-C connector properly */
598 dr_mode = "peripheral";
602 vdda-pll-supply = <&vreg_l5a>;
603 vdda18-supply = <&vreg_l7a>;
604 vdda33-supply = <&vreg_l13a>;
610 vdda-phy-supply = <&vreg_l3a>;
611 vdda-pll-supply = <&vreg_l5a>;
621 /* TODO: Define USB-C connector properly */
626 vdda-pll-supply = <&vreg_l1c>;
627 vdda18-supply = <&vreg_l7c>;
628 vdda33-supply = <&vreg_l2c>;
634 vdda-phy-supply = <&vreg_l4c>;
635 vdda-pll-supply = <&vreg_l1c>;
641 vdda-pll-supply = <&vreg_l5a>;
642 vdda18-supply = <&vreg_l7g>;
643 vdda33-supply = <&vreg_l13a>;
649 vdda-pll-supply = <&vreg_l5a>;
650 vdda18-supply = <&vreg_l7g>;
651 vdda33-supply = <&vreg_l13a>;
657 vdda-pll-supply = <&vreg_l5a>;
658 vdda18-supply = <&vreg_l7g>;
659 vdda33-supply = <&vreg_l13a>;
665 vdda-pll-supply = <&vreg_l5a>;
666 vdda18-supply = <&vreg_l7g>;
667 vdda33-supply = <&vreg_l13a>;
673 vdda-phy-supply = <&vreg_l3a>;
674 vdda-pll-supply = <&vreg_l5a>;
680 vdda-phy-supply = <&vreg_l3a>;
681 vdda-pll-supply = <&vreg_l5a>;
687 clock-frequency = <38400000>;
693 max20411_en: max20411-en-state {
701 pcie2a_default: pcie2a-default-state {
704 function = "pcie2a_clkreq";
705 drive-strength = <2>;
712 drive-strength = <2>;
719 drive-strength = <2>;
724 pcie3a_default: pcie3a-default-state {
727 function = "pcie3a_clkreq";
728 drive-strength = <2>;
735 drive-strength = <2>;
742 drive-strength = <2>;
747 pcie3b_default: pcie3b-default-state {
750 function = "pcie3b_clkreq";
751 drive-strength = <2>;
758 drive-strength = <2>;
765 drive-strength = <2>;
770 pcie4_default: pcie4-default-state {
773 function = "pcie4_clkreq";
774 drive-strength = <2>;
781 drive-strength = <2>;
788 drive-strength = <2>;
793 qup1_i2c4_state: qup1-i2c4-state {
794 pins = "gpio0", "gpio1";
796 drive-strength = <2>;