blob: c7d05945aa5192632253b421a3c3e06b25f8998c [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2021, Linaro Limited
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
9#include "sm8450.dtsi"
10#include "pm8350.dtsi"
11#include "pm8350b.dtsi"
12#include "pm8350c.dtsi"
13#include "pm8450.dtsi"
14#include "pmk8350.dtsi"
15#include "pmr735a.dtsi"
16#include "pmr735b.dtsi"
17
18/ {
19 model = "Qualcomm Technologies, Inc. SM8450 QRD";
20 compatible = "qcom,sm8450-qrd", "qcom,sm8450";
21 chassis-type = "handset";
22
23 aliases {
24 serial0 = &uart7;
25 };
26
27 chosen {
28 stdout-path = "serial0:115200n8";
29 };
30
31 vph_pwr: vph-pwr-regulator {
32 compatible = "regulator-fixed";
33 regulator-name = "vph_pwr";
34 regulator-min-microvolt = <3700000>;
35 regulator-max-microvolt = <3700000>;
36
37 regulator-always-on;
38 regulator-boot-on;
39 };
40};
41
42&apps_rsc {
43 regulators-0 {
44 compatible = "qcom,pm8350-rpmh-regulators";
45 qcom,pmic-id = "b";
46
47 vdd-s1-supply = <&vph_pwr>;
48 vdd-s2-supply = <&vph_pwr>;
49 vdd-s3-supply = <&vph_pwr>;
50 vdd-s4-supply = <&vph_pwr>;
51 vdd-s5-supply = <&vph_pwr>;
52 vdd-s6-supply = <&vph_pwr>;
53 vdd-s7-supply = <&vph_pwr>;
54 vdd-s8-supply = <&vph_pwr>;
55 vdd-s9-supply = <&vph_pwr>;
56 vdd-s10-supply = <&vph_pwr>;
57 vdd-s11-supply = <&vph_pwr>;
58 vdd-s12-supply = <&vph_pwr>;
59
60 vdd-l1-l4-supply = <&vreg_s11b_0p95>;
61 vdd-l2-l7-supply = <&vreg_bob>;
62 vdd-l3-l5-supply = <&vreg_bob>;
63 vdd-l6-l9-l10-supply = <&vreg_s12b_1p25>;
64 vdd-l8-supply = <&vreg_s2h_0p95>;
65
66 vreg_s10b_1p8: smps10 {
67 regulator-name = "vreg_s10b_1p8";
68 regulator-min-microvolt = <1800000>;
69 regulator-max-microvolt = <1800000>;
70 };
71
72 vreg_s11b_0p95: smps11 {
73 regulator-name = "vreg_s11b_0p95";
74 regulator-min-microvolt = <848000>;
75 regulator-max-microvolt = <1104000>;
76 };
77
78 vreg_s12b_1p25: smps12 {
79 regulator-name = "vreg_s12b_1p25";
80 regulator-min-microvolt = <1224000>;
81 regulator-max-microvolt = <1400000>;
82 };
83
84 vreg_l1b_0p91: ldo1 {
85 regulator-name = "vreg_l1b_0p91";
86 regulator-min-microvolt = <912000>;
87 regulator-max-microvolt = <920000>;
88 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
89 };
90
91 vreg_l2b_3p07: ldo2 {
92 regulator-name = "vreg_l2b_3p07";
93 regulator-min-microvolt = <3072000>;
94 regulator-max-microvolt = <3072000>;
95 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
96 };
97
98 vreg_l3b_0p9: ldo3 {
99 regulator-name = "vreg_l3b_0p9";
100 regulator-min-microvolt = <904000>;
101 regulator-max-microvolt = <904000>;
102 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
103 };
104
105 vreg_l5b_0p88: ldo5 {
106 regulator-name = "vreg_l5b_0p88";
107 regulator-min-microvolt = <880000>;
108 regulator-max-microvolt = <888000>;
109 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
110 };
111
112 vreg_l6b_1p2: ldo6 {
113 regulator-name = "vreg_l6b_1p2";
114 regulator-min-microvolt = <1200000>;
115 regulator-max-microvolt = <1200000>;
116 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
117 };
118
119 vreg_l7b_2p5: ldo7 {
120 regulator-name = "vreg_l7b_2p5";
121 regulator-min-microvolt = <2504000>;
122 regulator-max-microvolt = <2504000>;
123 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
124 };
125
126 vreg_l9b_1p2: ldo9 {
127 regulator-name = "vreg_l9b_1p2";
128 regulator-min-microvolt = <1200000>;
129 regulator-max-microvolt = <1200000>;
130 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
131 };
132 };
133
134 regulators-1 {
135 compatible = "qcom,pm8350c-rpmh-regulators";
136 qcom,pmic-id = "c";
137
138 vdd-s1-supply = <&vph_pwr>;
139 vdd-s2-supply = <&vph_pwr>;
140 vdd-s3-supply = <&vph_pwr>;
141 vdd-s4-supply = <&vph_pwr>;
142 vdd-s5-supply = <&vph_pwr>;
143 vdd-s6-supply = <&vph_pwr>;
144 vdd-s7-supply = <&vph_pwr>;
145 vdd-s8-supply = <&vph_pwr>;
146 vdd-s9-supply = <&vph_pwr>;
147 vdd-s10-supply = <&vph_pwr>;
148
149 vdd-l1-l12-supply = <&vreg_bob>;
150 vdd-l2-l8-supply = <&vreg_bob>;
151 vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>;
152 vdd-l6-l9-l11-supply = <&vreg_bob>;
153
154 vdd-bob-supply = <&vph_pwr>;
155
156 vreg_s1c_1p86: smps1 {
157 regulator-name = "vreg_s1c_1p86";
158 regulator-min-microvolt = <1800000>;
159 regulator-max-microvolt = <2024000>;
160 };
161
162 vreg_s10c_1p05: smps10 {
163 regulator-name = "vreg_s10c_1p05";
164 regulator-min-microvolt = <1000000>;
165 regulator-max-microvolt = <1100000>;
166 };
167
168 vreg_bob: bob {
169 regulator-name = "vreg_bob";
170 regulator-min-microvolt = <3008000>;
171 regulator-max-microvolt = <3960000>;
172 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
173 };
174
175 vreg_l1c_1p8: ldo1 {
176 regulator-name = "vreg_l1c_1p8";
177 regulator-min-microvolt = <1800000>;
178 regulator-max-microvolt = <1800000>;
179 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
180 };
181
182 vreg_l3c_3p0: ldo3 {
183 regulator-name = "vreg_l3c_3p0";
184 regulator-min-microvolt = <3296000>;
185 regulator-max-microvolt = <3304000>;
186 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
187 };
188
189 vreg_l4c_1p8: ldo4 {
190 regulator-name = "vreg_l4c_1p8";
191 regulator-min-microvolt = <1704000>;
192 regulator-max-microvolt = <3000000>;
193 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
194 };
195
196 vreg_l5c_1p8: ldo5 {
197 regulator-name = "vreg_l5c_1p8";
198 regulator-min-microvolt = <1704000>;
199 regulator-max-microvolt = <3000000>;
200 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
201 };
202
203 vreg_l6c_1p8: ldo6 {
204 regulator-name = "vreg_l6c_1p8";
205 regulator-min-microvolt = <1800000>;
206 regulator-max-microvolt = <3008000>;
207 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
208 };
209
210 vreg_l7c_3p0: ldo7 {
211 regulator-name = "vreg_l7c_3p0";
212 regulator-min-microvolt = <3008000>;
213 regulator-max-microvolt = <3008000>;
214 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
215 };
216
217 vreg_l8c_1p8: ldo8 {
218 regulator-name = "vreg_l8c_1p8";
219 regulator-min-microvolt = <1800000>;
220 regulator-max-microvolt = <1800000>;
221 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
222 };
223
224 vreg_l9c_2p96: ldo9 {
225 regulator-name = "vreg_l9c_2p96";
226 regulator-min-microvolt = <2960000>;
227 regulator-max-microvolt = <3008000>;
228 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
229 };
230
231 vreg_l12c_1p8: ldo12 {
232 regulator-name = "vreg_l12c_1p8";
233 regulator-min-microvolt = <1800000>;
234 regulator-max-microvolt = <1968000>;
235 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
236 };
237
238 vreg_l13c_3p0: ldo13 {
239 regulator-name = "vreg_l13c_3p0";
240 regulator-min-microvolt = <3000000>;
241 regulator-max-microvolt = <3000000>;
242 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
243 };
244 };
245
246 regulators-2 {
247 compatible = "qcom,pm8450-rpmh-regulators";
248 qcom,pmic-id = "h";
249
250 vdd-s1-supply = <&vph_pwr>;
251 vdd-s2-supply = <&vph_pwr>;
252 vdd-s3-supply = <&vph_pwr>;
253 vdd-s4-supply = <&vph_pwr>;
254 vdd-s5-supply = <&vph_pwr>;
255 vdd-s6-supply = <&vph_pwr>;
256
257 vdd-l2-supply = <&vreg_bob>;
258 vdd-l3-supply = <&vreg_bob>;
259 vdd-l4-supply = <&vreg_bob>;
260
261 vreg_s2h_0p95: smps2 {
262 regulator-name = "vreg_s2h_0p95";
263 regulator-min-microvolt = <848000>;
264 regulator-max-microvolt = <1104000>;
265 };
266
267 vreg_s3h_0p5: smps3 {
268 regulator-name = "vreg_s3h_0p5";
269 regulator-min-microvolt = <500000>;
270 regulator-max-microvolt = <500000>;
271 };
272
273 vreg_l2h_0p91: ldo2 {
274 regulator-name = "vreg_l2h_0p91";
275 regulator-min-microvolt = <880000>;
276 regulator-max-microvolt = <912000>;
277 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
278 };
279
280 vreg_l3h_0p91: ldo3 {
281 regulator-name = "vreg_l3h_0p91";
282 regulator-min-microvolt = <912000>;
283 regulator-max-microvolt = <912000>;
284 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
285 };
286 };
287
288 regulators-3 {
289 compatible = "qcom,pmr735a-rpmh-regulators";
290 qcom,pmic-id = "e";
291
292 vdd-s1-supply = <&vph_pwr>;
293 vdd-s2-supply = <&vph_pwr>;
294 vdd-s3-supply = <&vph_pwr>;
295
296 vdd-l1-l2-supply = <&vreg_s2e_0p85>;
297 vdd-l3-supply = <&vreg_s1e_1p25>;
298 vdd-l4-supply = <&vreg_s1c_1p86>;
299 vdd-l5-l6-supply = <&vreg_s1c_1p86>;
300 vdd-l7-bob-supply = <&vreg_bob>;
301
302 vreg_s1e_1p25: smps1 {
303 regulator-name = "vreg_s1e_1p25";
304 regulator-min-microvolt = <1200000>;
305 regulator-max-microvolt = <1296000>;
306 };
307
308 vreg_s2e_0p85: smps2 {
309 regulator-name = "vreg_s2e_0p85";
310 regulator-min-microvolt = <500000>;
311 regulator-max-microvolt = <1040000>;
312 };
313
314 vreg_l1e_0p8: ldo1 {
315 regulator-name = "vreg_l1e_0p8";
316 regulator-min-microvolt = <800000>;
317 regulator-max-microvolt = <800000>;
318 };
319
320 vreg_l2e_0p8: ldo2 {
321 regulator-name = "vreg_l2e_0p8";
322 regulator-min-microvolt = <800000>;
323 regulator-max-microvolt = <800000>;
324 };
325
326 vreg_l3e_1p2: ldo3 {
327 regulator-name = "vreg_l3e_1p2";
328 regulator-min-microvolt = <1200000>;
329 regulator-max-microvolt = <1200000>;
330 };
331
332 vreg_l4e_1p7: ldo4 {
333 regulator-name = "vreg_l4e_1p7";
334 regulator-min-microvolt = <1776000>;
335 regulator-max-microvolt = <1776000>;
336 };
337
338 vreg_l5e_0p88: ldo5 {
339 regulator-name = "vreg_l5e_0p88";
340 regulator-min-microvolt = <880000>;
341 regulator-max-microvolt = <880000>;
342 };
343
344 vreg_l6e_1p2: ldo6 {
345 regulator-name = "vreg_l6e_1p2";
346 regulator-min-microvolt = <1200000>;
347 regulator-max-microvolt = <1200000>;
348 };
349 };
350};
351
352&pcie0 {
353 status = "okay";
354};
355
356&pcie0_phy {
357 status = "okay";
358 vdda-phy-supply = <&vreg_l5b_0p88>;
359 vdda-pll-supply = <&vreg_l6b_1p2>;
360};
361
362&gpi_dma0 {
363 status = "okay";
364};
365
366&i2c5 {
367 status = "okay";
368};
369
370&qupv3_id_0 {
371 status = "okay";
372};
373
374&qupv3_id_2 {
375 status = "okay";
376};
377
378&remoteproc_adsp {
379 status = "okay";
380 firmware-name = "qcom/sm8450/adsp.mbn";
381};
382
383&remoteproc_cdsp {
384 status = "okay";
385 firmware-name = "qcom/sm8450/cdsp.mbn";
386};
387
388&remoteproc_mpss {
389 status = "okay";
390 firmware-name = "qcom/sm8450/modem.mbn";
391};
392
393&remoteproc_slpi {
394 status = "okay";
395 firmware-name = "qcom/sm8450/slpi.mbn";
396};
397
398&sdhc_2 {
399 cd-gpios = <&tlmm 92 GPIO_ACTIVE_HIGH>;
400 pinctrl-names = "default", "sleep";
401 pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
402 pinctrl-1 = <&sdc2_sleep_state &sdc2_card_det_n>;
403 vmmc-supply = <&vreg_l9c_2p96>;
404 vqmmc-supply = <&vreg_l6c_1p8>;
405 no-sdio;
406 no-mmc;
407 status = "okay";
408};
409
410&spi4 {
411 status = "okay";
412};
413
414&spi18 {
415 status = "okay";
416};
417
418&spi19 {
419 status = "okay";
420};
421
422&tlmm {
423 gpio-reserved-ranges = <28 4>, <36 4>;
424
425 sdc2_card_det_n: sd-card-det-n-state {
426 pins = "gpio92";
427 function = "gpio";
428 drive-strength = <2>;
429 bias-pull-up;
430 };
431};
432
433&uart7 {
434 status = "okay";
435};
436
437&ufs_mem_hc {
438 status = "okay";
439
440 reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
441
442 vcc-supply = <&vreg_l7b_2p5>;
443 vcc-max-microamp = <1100000>;
444 vccq-supply = <&vreg_l9b_1p2>;
445 vccq-max-microamp = <1200000>;
446 vdd-hba-supply = <&vreg_l9b_1p2>;
447};
448
449&ufs_mem_phy {
450 status = "okay";
451
452 vdda-phy-supply = <&vreg_l5b_0p88>;
453 vdda-pll-supply = <&vreg_l6b_1p2>;
454};
455
456&usb_1 {
457 status = "okay";
458};
459
460&usb_1_dwc3 {
461 dr_mode = "peripheral";
462};
463
464&usb_1_hsphy {
465 status = "okay";
466
467 vdda-pll-supply = <&vreg_l5b_0p88>;
468 vdda18-supply = <&vreg_l1c_1p8>;
469 vdda33-supply = <&vreg_l2b_3p07>;
470};
471
472&usb_1_qmpphy {
473 status = "okay";
474
475 vdda-phy-supply = <&vreg_l6b_1p2>;
476 vdda-pll-supply = <&vreg_l1b_0p91>;
477};