1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
10 #include "sm8150.dtsi"
11 #include "pm8150.dtsi"
12 #include "pm8150b.dtsi"
13 #include "pm8150l.dtsi"
15 /delete-node/ &cdsp_mem;
16 /delete-node/ &gpu_mem;
17 /delete-node/ &ipa_fw_mem;
18 /delete-node/ &ipa_gsi_mem;
19 /delete-node/ &mpss_mem;
20 /delete-node/ &slpi_mem;
21 /delete-node/ &spss_mem;
22 /delete-node/ &venus_mem;
25 qcom,msm-id = <339 0x20000>; /* SM8150 v2 */
26 qcom,board-id = <8 0>;
33 framebuffer: framebuffer@9c000000 {
34 compatible = "simple-framebuffer";
35 reg = <0 0x9c000000 0 0x2300000>;
38 stride = <(1644 * 4)>;
41 * That's (going to be) a lot of clocks, but it's necessary due
42 * to unused clk cleanup & no panel driver yet (& no dispcc either)..
44 clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
45 <&gcc GCC_DISP_SF_AXI_CLK>;
49 vph_pwr: vph-pwr-regulator {
50 compatible = "regulator-fixed";
51 regulator-name = "vph_pwr";
52 regulator-min-microvolt = <3700000>;
53 regulator-max-microvolt = <3700000>;
57 * Apparently RPMh does not provide support for PM8150 S4 because it
58 * is always-on; model it as a fixed regulator.
60 vreg_s4a_1p8: pm8150-s4 {
61 compatible = "regulator-fixed";
62 regulator-name = "vreg_s4a_1p8";
64 regulator-min-microvolt = <1800000>;
65 regulator-max-microvolt = <1800000>;
70 vin-supply = <&vph_pwr>;
74 mpss_mem: memory@8dc00000 {
75 reg = <0x0 0x8dc00000 0x0 0x9600000>;
79 venus_mem: memory@97200000 {
80 reg = <0x0 0x97200000 0x0 0x500000>;
84 slpi_mem: memory@97700000 {
85 reg = <0x0 0x97700000 0x0 0x1400000>;
89 ipa_fw_mem: memory@98b00000 {
90 reg = <0x0 0x98b00000 0x0 0x10000>;
94 ipa_gsi_mem: memory@98b10000 {
95 reg = <0x0 0x98b10000 0x0 0x5000>;
99 gpu_mem: memory@98b15000 {
100 reg = <0x0 0x98b15000 0x0 0x2000>;
104 spss_mem: memory@98c00000 {
105 reg = <0x0 0x98c00000 0x0 0x100000>;
109 cdsp_mem: memory@98d00000 {
110 reg = <0x0 0x98d00000 0x0 0x1400000>;
114 cont_splash_mem: memory@9c000000 {
115 reg = <0x0 0x9c000000 0x0 0x2400000>;
119 cdsp_sec_mem: memory@a4c00000 {
120 reg = <0x0 0xa4c00000 0x0 0x3c00000>;
125 compatible = "ramoops";
126 reg = <0x0 0xffc00000 0x0 0x100000>;
127 record-size = <0x1000>;
128 console-size = <0x40000>;
129 msg-size = <0x20000 0x20000>;
137 reg = <0x0 0x8be00000 0x0 0x1e00000>;
141 pm8150-rpmh-regulators {
142 compatible = "qcom,pm8150-rpmh-regulators";
145 vdd-s1-supply = <&vph_pwr>;
146 vdd-s2-supply = <&vph_pwr>;
147 vdd-s3-supply = <&vph_pwr>;
148 vdd-s4-supply = <&vph_pwr>;
149 vdd-s5-supply = <&vph_pwr>;
150 vdd-s6-supply = <&vph_pwr>;
151 vdd-s7-supply = <&vph_pwr>;
152 vdd-s8-supply = <&vph_pwr>;
153 vdd-s9-supply = <&vph_pwr>;
154 vdd-s10-supply = <&vph_pwr>;
156 vdd-l1-l8-l11-supply = <&vreg_s6a_0p9>;
157 vdd-l2-l10-supply = <&vreg_bob>;
158 vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p9>;
159 vdd-l6-l9-supply = <&vreg_s8c_1p3>;
160 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
161 vdd-l13-l16-l17-supply = <&vreg_bob>;
163 vreg_s2a_0p6: smps2 {
164 regulator-min-microvolt = <600000>;
165 regulator-max-microvolt = <600000>;
166 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
169 vreg_s5a_1p9: smps5 {
170 regulator-min-microvolt = <1904000>;
171 regulator-max-microvolt = <2040000>;
172 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
175 vreg_s6a_0p9: smps6 {
176 regulator-min-microvolt = <920000>;
177 regulator-max-microvolt = <1128000>;
178 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
181 vreg_l1a_0p75: ldo1 {
182 regulator-min-microvolt = <752000>;
183 regulator-max-microvolt = <752000>;
184 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
188 regulator-min-microvolt = <3072000>;
189 regulator-max-microvolt = <3072000>;
190 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
194 regulator-min-microvolt = <480000>;
195 regulator-max-microvolt = <932000>;
196 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
199 vreg_l5a_0p875: ldo5 {
200 regulator-min-microvolt = <880000>;
201 regulator-max-microvolt = <880000>;
202 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
206 regulator-min-microvolt = <1200000>;
207 regulator-max-microvolt = <1200000>;
208 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
212 regulator-min-microvolt = <1800000>;
213 regulator-max-microvolt = <1800000>;
214 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
218 regulator-min-microvolt = <1200000>;
219 regulator-max-microvolt = <1200000>;
220 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
223 vreg_l10a_2p5: ldo10 {
224 regulator-min-microvolt = <2504000>;
225 regulator-max-microvolt = <2960000>;
226 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
229 vreg_l11a_0p8: ldo11 {
230 regulator-min-microvolt = <800000>;
231 regulator-max-microvolt = <800000>;
232 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
235 vreg_l12a_1p8: ldo12 {
236 regulator-min-microvolt = <1800000>;
237 regulator-max-microvolt = <1800000>;
238 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
243 vreg_l14a_1p8: ldo14 {
244 regulator-min-microvolt = <1800000>;
245 regulator-max-microvolt = <1800000>;
246 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
249 vreg_l15a_1p7: ldo15 {
250 regulator-min-microvolt = <1704000>;
251 regulator-max-microvolt = <1704000>;
252 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
255 vreg_l16a_2p7: ldo16 {
256 regulator-min-microvolt = <2704000>;
257 regulator-max-microvolt = <2960000>;
258 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
261 vreg_l17a_3p0: ldo17 {
262 regulator-min-microvolt = <2856000>;
263 regulator-max-microvolt = <3008000>;
264 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
267 vreg_l18a_0p8: ldo18 {
268 regulator-min-microvolt = <880000>;
269 regulator-max-microvolt = <912000>;
270 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
274 pm8150l-rpmh-regulators {
275 compatible = "qcom,pm8150l-rpmh-regulators";
278 vdd-s1-supply = <&vph_pwr>;
279 vdd-s2-supply = <&vph_pwr>;
280 vdd-s3-supply = <&vph_pwr>;
281 vdd-s4-supply = <&vph_pwr>;
282 vdd-s5-supply = <&vph_pwr>;
283 vdd-s6-supply = <&vph_pwr>;
284 vdd-s7-supply = <&vph_pwr>;
285 vdd-s8-supply = <&vph_pwr>;
287 vdd-l1-l8-supply = <&vreg_s4a_1p8>;
288 vdd-l2-l3-supply = <&vreg_s8c_1p3>;
289 vdd-l4-l5-l6-supply = <&vreg_bob>;
290 vdd-l7-l11-supply = <&vreg_bob>;
291 vdd-l9-l10-supply = <&vreg_bob>;
293 vdd-bob-supply = <&vph_pwr>;
294 vdd-flash-supply = <&vreg_bob>;
295 vdd-rgb-supply = <&vreg_bob>;
298 regulator-min-microvolt = <3350000>;
299 regulator-max-microvolt = <4000000>;
300 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
301 regulator-allow-bypass;
304 vreg_s1c_1p1: smps1 {
305 regulator-min-microvolt = <1128000>;
306 regulator-max-microvolt = <1128000>;
307 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
310 vreg_s8c_1p3: smps8 {
311 regulator-min-microvolt = <1352000>;
312 regulator-max-microvolt = <1352000>;
313 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
317 regulator-min-microvolt = <1800000>;
318 regulator-max-microvolt = <1800000>;
319 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
323 regulator-min-microvolt = <1304000>;
324 regulator-max-microvolt = <1304000>;
325 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
329 regulator-min-microvolt = <1200000>;
330 regulator-max-microvolt = <1200000>;
331 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
335 regulator-min-microvolt = <1704000>;
336 regulator-max-microvolt = <2928000>;
337 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
341 regulator-min-microvolt = <1704000>;
342 regulator-max-microvolt = <2928000>;
343 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
347 regulator-min-microvolt = <1800000>;
348 regulator-max-microvolt = <2960000>;
349 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
350 regulator-allow-set-load;
354 regulator-min-microvolt = <2856000>;
355 regulator-max-microvolt = <3104000>;
356 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
360 regulator-min-microvolt = <1800000>;
361 regulator-max-microvolt = <1800000>;
362 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
366 regulator-min-microvolt = <2704000>;
367 regulator-max-microvolt = <2960000>;
368 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
369 regulator-allow-set-load;
372 vreg_l10c_3p3: ldo10 {
373 regulator-min-microvolt = <3000000>;
374 regulator-max-microvolt = <3312000>;
375 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
378 vreg_l11c_3p3: ldo11 {
379 regulator-min-microvolt = <3000000>;
380 regulator-max-microvolt = <3312000>;
381 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
385 /* PM8009 is not present on these boards, even if downstream sources suggest so. */
391 /* Qcom SMB1355 @ c */
392 /* Qcom SMB1390 @ 10 */
393 /* NXP PN553 NFC @ 28 */
394 /* Qcom FSA4480 USB-C audio switch @ 43 */
400 /* AMS TCS3490 RGB+IR color sensor @ 72 */
406 /* Samsung touchscreen @ 48 */
422 gpio-reserved-ranges = <126 4>;
429 /* BIG WARNING! DO NOT TOUCH UFS, YOUR DEVICE WILL DIE! */
430 &ufs_mem_hc { status = "disabled"; };
431 &ufs_mem_phy { status = "disabled"; };
438 dr_mode = "peripheral";
443 vdda-pll-supply = <&vreg_l5a_0p875>;
444 vdda33-supply = <&vreg_l2a_3p1>;
445 vdda18-supply = <&vreg_l12a_1p8>;
450 vdda-phy-supply = <&vreg_l3c_1p2>;
451 vdda-pll-supply = <&vreg_l18a_0p8>;