1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
9#include "sm8250.dtsi"
10#include "pm8150.dtsi"
11#include "pm8150b.dtsi"
12#include "pm8150l.dtsi"
13#include "pm8009.dtsi"
14
15/ {
16	model = "Qualcomm Technologies, Inc. SM8250 MTP";
17	compatible = "qcom,sm8250-mtp";
18
19	aliases {
20		serial0 = &uart2;
21	};
22
23	chosen {
24		stdout-path = "serial0:115200n8";
25	};
26
27	vph_pwr: vph-pwr-regulator {
28		compatible = "regulator-fixed";
29		regulator-name = "vph_pwr";
30		regulator-min-microvolt = <3700000>;
31		regulator-max-microvolt = <3700000>;
32	};
33
34	vreg_s4a_1p8: pm8150-s4 {
35		compatible = "regulator-fixed";
36		regulator-name = "vreg_s4a_1p8";
37
38		regulator-min-microvolt = <1800000>;
39		regulator-max-microvolt = <1800000>;
40
41		regulator-always-on;
42		regulator-boot-on;
43
44		vin-supply = <&vph_pwr>;
45	};
46
47	vreg_s6c_0p88: smpc6-regulator {
48		compatible = "regulator-fixed";
49		regulator-name = "vreg_s6c_0p88";
50
51		regulator-min-microvolt = <880000>;
52		regulator-max-microvolt = <880000>;
53		regulator-always-on;
54		vin-supply = <&vph_pwr>;
55	};
56};
57
58&apps_rsc {
59	pm8150-rpmh-regulators {
60		compatible = "qcom,pm8150-rpmh-regulators";
61		qcom,pmic-id = "a";
62
63		vdd-s1-supply = <&vph_pwr>;
64		vdd-s2-supply = <&vph_pwr>;
65		vdd-s3-supply = <&vph_pwr>;
66		vdd-s4-supply = <&vph_pwr>;
67		vdd-s5-supply = <&vph_pwr>;
68		vdd-s6-supply = <&vph_pwr>;
69		vdd-s7-supply = <&vph_pwr>;
70		vdd-s8-supply = <&vph_pwr>;
71		vdd-s9-supply = <&vph_pwr>;
72		vdd-s10-supply = <&vph_pwr>;
73		vdd-l1-l8-l11-supply = <&vreg_s6c_0p88>;
74		vdd-l2-l10-supply = <&vreg_bob>;
75		vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p95>;
76		vdd-l6-l9-supply = <&vreg_s8c_1p3>;
77		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
78		vdd-l13-l16-l17-supply = <&vreg_bob>;
79
80		vreg_s5a_1p9: smps5 {
81			regulator-name = "vreg_s5a_1p9";
82			regulator-min-microvolt = <1904000>;
83			regulator-max-microvolt = <2000000>;
84			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
85		};
86
87		vreg_s6a_0p95: smps6 {
88			regulator-name = "vreg_s6a_0p95";
89			regulator-min-microvolt = <920000>;
90			regulator-max-microvolt = <1128000>;
91			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
92		};
93
94		vreg_l2a_3p1: ldo2 {
95			regulator-name = "vreg_l2a_3p1";
96			regulator-min-microvolt = <3072000>;
97			regulator-max-microvolt = <3072000>;
98			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
99		};
100
101		vreg_l3a_0p9: ldo3 {
102			regulator-name = "vreg_l3a_0p9";
103			regulator-min-microvolt = <928000>;
104			regulator-max-microvolt = <932000>;
105			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
106		};
107
108		vreg_l5a_0p875: ldo5 {
109			regulator-name = "vreg_l5a_0p875";
110			regulator-min-microvolt = <880000>;
111			regulator-max-microvolt = <880000>;
112			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
113		};
114
115		vreg_l6a_1p2: ldo6 {
116			regulator-name = "vreg_l6a_1p2";
117			regulator-min-microvolt = <1200000>;
118			regulator-max-microvolt = <1200000>;
119			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
120		};
121
122		vreg_l7a_1p7: ldo7 {
123			regulator-name = "vreg_l7a_1p7";
124			regulator-min-microvolt = <1704000>;
125			regulator-max-microvolt = <1800000>;
126			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
127		};
128
129		vreg_l9a_1p2: ldo9 {
130			regulator-name = "vreg_l9a_1p2";
131			regulator-min-microvolt = <1200000>;
132			regulator-max-microvolt = <1200000>;
133			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
134		};
135
136		vreg_l10a_1p8: ldo10 {
137			regulator-name = "vreg_l10a_1p8";
138			regulator-min-microvolt = <1800000>;
139			regulator-max-microvolt = <1800000>;
140			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
141		};
142
143		vreg_l11a_0p75: ldo11 {
144			regulator-name = "vreg_l11a_0p75";
145			regulator-min-microvolt = <800000>;
146			regulator-max-microvolt = <800000>;
147			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
148		};
149
150		vreg_l12a_1p8: ldo12 {
151			regulator-name = "vreg_l12a_1p8";
152			regulator-min-microvolt = <1800000>;
153			regulator-max-microvolt = <1800000>;
154			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
155		};
156
157		vreg_l13a_ts_3p0: ldo13 {
158			regulator-name = "vreg_l13a_ts_3p0";
159			regulator-min-microvolt = <3008000>;
160			regulator-max-microvolt = <3008000>;
161			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
162		};
163
164		vreg_l14a_1p8: ldo14 {
165			regulator-name = "vreg_l14a_1p8";
166			regulator-min-microvolt = <1800000>;
167			regulator-max-microvolt = <1880000>;
168			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
169		};
170
171		vreg_l15a_11ad_io_1p8: ldo15 {
172			regulator-name = "vreg_l15a_11ad_io_1p8";
173			regulator-min-microvolt = <1800000>;
174			regulator-max-microvolt = <1800000>;
175			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
176		};
177
178		vreg_l16a_2p7: ldo16 {
179			regulator-name = "vreg_l16a_2p7";
180			regulator-min-microvolt = <2704000>;
181			regulator-max-microvolt = <2960000>;
182			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
183		};
184
185		vreg_l17a_3p0: ldo17 {
186			regulator-name = "vreg_l17a_3p0";
187			regulator-min-microvolt = <2856000>;
188			regulator-max-microvolt = <3008000>;
189			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
190		};
191	};
192
193	pm8150l-rpmh-regulators {
194		compatible = "qcom,pm8150l-rpmh-regulators";
195		qcom,pmic-id = "c";
196
197		vdd-s1-supply = <&vph_pwr>;
198		vdd-s2-supply = <&vph_pwr>;
199		vdd-s3-supply = <&vph_pwr>;
200		vdd-s4-supply = <&vph_pwr>;
201		vdd-s5-supply = <&vph_pwr>;
202		vdd-s6-supply = <&vph_pwr>;
203		vdd-s7-supply = <&vph_pwr>;
204		vdd-s8-supply = <&vph_pwr>;
205		vdd-l1-l8-supply = <&vreg_s4a_1p8>;
206		vdd-l2-l3-supply = <&vreg_s8c_1p3>;
207		vdd-l4-l5-l6-supply = <&vreg_bob>;
208		vdd-l7-l11-supply = <&vreg_bob>;
209		vdd-l9-l10-supply = <&vreg_bob>;
210		vdd-bob-supply = <&vph_pwr>;
211
212		vreg_bob: bob {
213			regulator-name = "vreg_bob";
214			regulator-min-microvolt = <3008000>;
215			regulator-max-microvolt = <4000000>;
216			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
217		};
218
219		vreg_s8c_1p3: smps8 {
220			regulator-name = "vreg_s8c_1p3";
221			regulator-min-microvolt = <1352000>;
222			regulator-max-microvolt = <1352000>;
223			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
224		};
225
226		vreg_l1c_1p8: ldo1 {
227			regulator-name = "vreg_l1c_1p8";
228			regulator-min-microvolt = <1800000>;
229			regulator-max-microvolt = <1800000>;
230			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
231		};
232
233		vreg_l2c_1p2: ldo2 {
234			regulator-name = "vreg_l2c_1p2";
235			regulator-min-microvolt = <1200000>;
236			regulator-max-microvolt = <1200000>;
237			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
238		};
239
240		vreg_l3c_0p92: ldo3 {
241			regulator-name = "vreg_l3c_0p92";
242			regulator-min-microvolt = <920000>;
243			regulator-max-microvolt = <920000>;
244			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
245		};
246
247		vreg_l4c_1p7: ldo4 {
248			regulator-name = "vreg_l4c_1p7";
249			regulator-min-microvolt = <1704000>;
250			regulator-max-microvolt = <2928000>;
251			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
252		};
253
254		vreg_l5c_1p8: ldo5 {
255			regulator-name = "vreg_l5c_1p8";
256			regulator-min-microvolt = <1800000>;
257			regulator-max-microvolt = <2928000>;
258			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
259		};
260
261		vreg_l6c_2p9: ldo6 {
262			regulator-name = "vreg_l6c_2p9";
263			regulator-min-microvolt = <1800000>;
264			regulator-max-microvolt = <2960000>;
265			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
266		};
267
268		vreg_l7c_cam_vcm0_2p85: ldo7 {
269			regulator-name = "vreg_l7c_cam_vcm0_2p85";
270			regulator-min-microvolt = <2856000>;
271			regulator-max-microvolt = <3104000>;
272			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
273		};
274
275		vreg_l8c_1p8: ldo8 {
276			regulator-name = "vreg_l8c_1p8";
277			regulator-min-microvolt = <1800000>;
278			regulator-max-microvolt = <1800000>;
279			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
280		};
281
282		vreg_l9c_2p9: ldo9 {
283			regulator-name = "vreg_l9c_2p9";
284			regulator-min-microvolt = <2704000>;
285			regulator-max-microvolt = <2960000>;
286			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
287		};
288
289		vreg_l10c_3p0: ldo10 {
290			regulator-name = "vreg_l10c_3p0";
291			regulator-min-microvolt = <3000000>;
292			regulator-max-microvolt = <3000000>;
293			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
294		};
295
296		vreg_l11c_3p3: ldo11 {
297			regulator-name = "vreg_l11c_3p3";
298			regulator-min-microvolt = <3000000>;
299			regulator-max-microvolt = <3312000>;
300			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
301		};
302	};
303
304	pm8009-rpmh-regulators {
305		compatible = "qcom,pm8009-rpmh-regulators";
306		qcom,pmic-id = "f";
307
308		vdd-s1-supply = <&vph_pwr>;
309		vdd-s2-supply = <&vreg_bob>;
310		vdd-l2-supply = <&vreg_s8c_1p3>;
311		vdd-l5-l6-supply = <&vreg_bob>;
312		vdd-l7-supply = <&vreg_s4a_1p8>;
313
314		vreg_l1f_cam_dvdd1_1p1: ldo1 {
315			regulator-name = "vreg_l1f_cam_dvdd1_1p1";
316			regulator-min-microvolt = <1104000>;
317			regulator-max-microvolt = <1104000>;
318			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
319		};
320
321		vreg_l2f_cam_dvdd0_1p2: ldo2 {
322			regulator-name = "vreg_l2f_cam_dvdd0_1p2";
323			regulator-min-microvolt = <1200000>;
324			regulator-max-microvolt = <1200000>;
325			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
326		};
327
328		vreg_l3f_cam_dvdd2_1p05: ldo3 {
329			regulator-name = "vreg_l3f_cam_dvdd2_1p05";
330			regulator-min-microvolt = <1056000>;
331			regulator-max-microvolt = <1056000>;
332			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
333		};
334
335		vreg_l5f_cam_avdd0_2p85: ldo5 {
336			regulator-name = "vreg_l5f_cam_avdd0_2p85";
337			regulator-min-microvolt = <2800000>;
338			regulator-max-microvolt = <2800000>;
339			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
340		};
341
342		vreg_l6f_cam_avdd1_2p85: ldo6 {
343			regulator-name = "vreg_l6f_cam_avdd1_2p85";
344			regulator-min-microvolt = <2856000>;
345			regulator-max-microvolt = <2856000>;
346			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
347		};
348
349		vreg_l7f_1p8: ldo7 {
350			regulator-name = "vreg_l7f_1p8";
351			regulator-min-microvolt = <1800000>;
352			regulator-max-microvolt = <1800000>;
353			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
354		};
355	};
356};
357
358&qupv3_id_1 {
359	status = "okay";
360};
361
362&tlmm {
363	gpio-reserved-ranges = <28 4>, <40 4>;
364};
365
366&uart2 {
367	status = "okay";
368};
369
370&ufs_mem_hc {
371	status = "okay";
372
373	vcc-supply = <&vreg_l17a_3p0>;
374	vcc-max-microamp = <750000>;
375	vccq-supply = <&vreg_l6a_1p2>;
376	vccq-max-microamp = <700000>;
377	vccq2-supply = <&vreg_s4a_1p8>;
378	vccq2-max-microamp = <750000>;
379};
380
381&ufs_mem_phy {
382	status = "okay";
383
384	vdda-phy-supply = <&vreg_l5a_0p875>;
385	vdda-max-microamp = <90200>;
386	vdda-pll-supply = <&vreg_l9a_1p2>;
387	vdda-pll-max-microamp = <19000>;
388};
389