]> git.ipfire.org Git - thirdparty/u-boot.git/blob - src/arm64/qcom/msm8939-pm8916.dtsi
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / src / arm64 / qcom / msm8939-pm8916.dtsi
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3 * msm8939-pm8916.dtsi describes common properties (e.g. regulator connections)
4 * that apply to most devices that make use of the MSM8939 SoC and PM8916 PMIC.
5 * Many regulators have a fixed purpose in the original reference design and
6 * were rarely re-used for different purposes. Devices that deviate from the
7 * typical reference design should not make use of this include and instead add
8 * the necessary properties in the board-specific device tree.
9 */
10
11 #include "msm8939.dtsi"
12 #include "pm8916.dtsi"
13
14 &mdss_dsi0 {
15 vdda-supply = <&pm8916_l2>;
16 vddio-supply = <&pm8916_l6>;
17 };
18
19 &mdss_dsi0_phy {
20 vddio-supply = <&pm8916_l6>;
21 };
22
23 &mdss_dsi1 {
24 vdda-supply = <&pm8916_l2>;
25 vddio-supply = <&pm8916_l6>;
26 };
27
28 &mdss_dsi1_phy {
29 vddio-supply = <&pm8916_l6>;
30 };
31
32 &mpss {
33 pll-supply = <&pm8916_l7>;
34 };
35
36 &pm8916_codec {
37 vdd-cdc-io-supply = <&pm8916_l5>;
38 vdd-cdc-tx-rx-cx-supply = <&pm8916_l5>;
39 vdd-micbias-supply = <&pm8916_l13>;
40 };
41
42 &rpm_requests {
43 pm8916_rpm_regulators: regulators {
44 compatible = "qcom,rpm-pm8916-regulators";
45 vdd_l1_l2_l3-supply = <&pm8916_s3>;
46 vdd_l4_l5_l6-supply = <&pm8916_s4>;
47 vdd_l7-supply = <&pm8916_s4>;
48
49 /* pm8916_s1 is managed by rpmpd (MSM8939_VDDMDCX) */
50 /* pm8916_s2 is managed by rpmpd (MSM8939_VDDCX) */
51 pm8916_s3: s3 {
52 regulator-min-microvolt = <1250000>;
53 regulator-max-microvolt = <1350000>;
54 regulator-always-on; /* Needed for L2 */
55 };
56 pm8916_s4: s4 {
57 regulator-min-microvolt = <1850000>;
58 regulator-max-microvolt = <2150000>;
59 regulator-always-on; /* Needed for L5/L7 */
60 };
61
62 /*
63 * Some of the regulators are unused or managed by another
64 * processor (e.g. the modem). We should still define nodes for
65 * them to ensure the vote from the application processor can be
66 * dropped in case the regulators are already on during boot.
67 *
68 * The labels for these nodes are omitted on purpose because
69 * boards should configure a proper voltage before using them.
70 */
71 l1 {};
72
73 pm8916_l2: l2 {
74 regulator-min-microvolt = <1200000>;
75 regulator-max-microvolt = <1200000>;
76 regulator-always-on; /* Needed for LPDDR RAM */
77 };
78
79 /* pm8916_l3 is managed by rpmpd (MSM8939_VDDMX) */
80
81 l4 {};
82
83 pm8916_l5: l5 {
84 regulator-min-microvolt = <1800000>;
85 regulator-max-microvolt = <1800000>;
86 regulator-always-on; /* Needed for most digital I/O */
87 };
88
89 pm8916_l6: l6 {
90 regulator-min-microvolt = <1800000>;
91 regulator-max-microvolt = <1800000>;
92 };
93
94 pm8916_l7: l7 {
95 regulator-min-microvolt = <1800000>;
96 regulator-max-microvolt = <1800000>;
97 regulator-always-on; /* Needed for CPU PLL */
98 };
99
100 pm8916_l8: l8 {
101 regulator-min-microvolt = <2900000>;
102 regulator-max-microvolt = <2900000>;
103 };
104
105 pm8916_l9: l9 {
106 regulator-min-microvolt = <3300000>;
107 regulator-max-microvolt = <3300000>;
108 };
109
110 l10 {};
111
112 pm8916_l11: l11 {
113 regulator-min-microvolt = <2950000>;
114 regulator-max-microvolt = <2950000>;
115 regulator-allow-set-load;
116 regulator-system-load = <200000>;
117 };
118
119 pm8916_l12: l12 {
120 regulator-min-microvolt = <1800000>;
121 regulator-max-microvolt = <2950000>;
122 };
123
124 pm8916_l13: l13 {
125 regulator-min-microvolt = <3075000>;
126 regulator-max-microvolt = <3075000>;
127 };
128
129 l14 {};
130 l15 {};
131 l16 {};
132 l17 {};
133 l18 {};
134 };
135 };
136
137 &sdhc_1 {
138 vmmc-supply = <&pm8916_l8>;
139 vqmmc-supply = <&pm8916_l5>;
140 };
141
142 &sdhc_2 {
143 vmmc-supply = <&pm8916_l11>;
144 vqmmc-supply = <&pm8916_l12>;
145 };
146
147 &usb_hs_phy {
148 v1p8-supply = <&pm8916_l7>;
149 v3p3-supply = <&pm8916_l13>;
150 };
151
152 &wcnss {
153 vddpx-supply = <&pm8916_l7>;
154 };
155
156 &wcnss_iris {
157 vddxo-supply = <&pm8916_l7>;
158 vddrfa-supply = <&pm8916_s3>;
159 vddpa-supply = <&pm8916_l9>;
160 vdddig-supply = <&pm8916_l5>;
161 };