xref: /linux/arch/arm64/boot/dts/qcom/msm8992-lg-bullhead.dtsi (revision 1c07425e902cd3137961c3d45b4271bf8a9b8eb9)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (c) 2015, LGE Inc. All rights reserved.
4 * Copyright (c) 2016, The Linux Foundation. All rights reserved.
5 * Copyright (c) 2021, Petr Vorel <petr.vorel@gmail.com>
6 */
7
8/dts-v1/;
9
10#include "msm8992.dtsi"
11#include "pm8994.dtsi"
12#include "pmi8994.dtsi"
13
14/* cont_splash_mem has different memory mapping */
15/delete-node/ &cont_splash_mem;
16
17/ {
18	model = "LG Nexus 5X";
19	compatible = "lg,bullhead", "qcom,msm8992";
20	chassis-type = "handset";
21
22	qcom,msm-id = <251 0>, <252 0>;
23	qcom,pmic-id = <0x10009 0x1000A 0x0 0x0>;
24
25	/* Bullhead firmware doesn't support PSCI */
26	/delete-node/ psci;
27
28	aliases {
29		serial0 = &blsp1_uart2;
30	};
31
32	chosen {
33		stdout-path = "serial0:115200n8";
34	};
35
36	reserved-memory {
37		#address-cells = <2>;
38		#size-cells = <2>;
39		ranges;
40
41		ramoops@1ff00000 {
42			compatible = "ramoops";
43			reg = <0x0 0x1ff00000 0x0 0x40000>;
44			console-size = <0x10000>;
45			record-size = <0x10000>;
46			ftrace-size = <0x10000>;
47			pmsg-size = <0x20000>;
48		};
49
50		cont_splash_mem: memory@3400000 {
51			reg = <0 0x03400000 0 0x1200000>;
52			no-map;
53		};
54	};
55};
56
57&blsp1_uart2 {
58	status = "okay";
59};
60
61&rpm_requests {
62	pm8994_regulators: regulators-0 {
63		compatible = "qcom,rpm-pm8994-regulators";
64
65		vdd_l1-supply = <&pm8994_s1>;
66		vdd_l2_26_28-supply = <&pm8994_s3>;
67		vdd_l3_11-supply = <&pm8994_s3>;
68		vdd_l4_27_31-supply = <&pm8994_s3>;
69		vdd_l5_7-supply = <&pm8994_s3>;
70		vdd_l6_12_32-supply = <&pm8994_s5>;
71		vdd_l8_16_30-supply = <&vph_pwr>;
72		vdd_l9_10_18_22-supply = <&vph_pwr>;
73		vdd_l13_19_23_24-supply = <&vph_pwr>;
74		vdd_l14_15-supply = <&pm8994_s5>;
75		vdd_l17_29-supply = <&vph_pwr>;
76		vdd_l20_21-supply = <&vph_pwr>;
77		vdd_l25-supply = <&pm8994_s5>;
78		vdd_lvs1_2-supply = <&pm8994_s4>;
79
80		/* S1, S2, S6 and S12 are managed by RPMPD */
81
82		pm8994_s1: s1 {
83			regulator-min-microvolt = <800000>;
84			regulator-max-microvolt = <800000>;
85		};
86
87		pm8994_s2: s2 {
88			/* TODO */
89		};
90
91		pm8994_s3: s3 {
92			regulator-min-microvolt = <1300000>;
93			regulator-max-microvolt = <1300000>;
94		};
95
96		pm8994_s4: s4 {
97			regulator-min-microvolt = <1800000>;
98			regulator-max-microvolt = <1800000>;
99			regulator-allow-set-load;
100			regulator-system-load = <325000>;
101		};
102
103		pm8994_s5: s5 {
104			regulator-min-microvolt = <2150000>;
105			regulator-max-microvolt = <2150000>;
106		};
107
108		pm8994_s7: s7 {
109			regulator-min-microvolt = <1000000>;
110			regulator-max-microvolt = <1000000>;
111		};
112
113		/* S8, S9, S10 and S11 - SPMI-managed VDD_APC */
114
115		pm8994_l1: l1 {
116			regulator-min-microvolt = <1000000>;
117			regulator-max-microvolt = <1000000>;
118		};
119
120		pm8994_l2: l2 {
121			regulator-min-microvolt = <1250000>;
122			regulator-max-microvolt = <1250000>;
123		};
124
125		pm8994_l3: l3 {
126			regulator-min-microvolt = <1200000>;
127			regulator-max-microvolt = <1200000>;
128		};
129
130		pm8994_l4: l4 {
131			regulator-min-microvolt = <1225000>;
132			regulator-max-microvolt = <1225000>;
133		};
134
135		/* L5 is inaccessible from RPM */
136
137		pm8994_l6: l6 {
138			regulator-min-microvolt = <1800000>;
139			regulator-max-microvolt = <1800000>;
140		};
141
142		/* L7 is inaccessible from RPM */
143
144		pm8994_l8: l8 {
145			regulator-min-microvolt = <1800000>;
146			regulator-max-microvolt = <1800000>;
147		};
148
149		pm8994_l9: l9 {
150			regulator-min-microvolt = <1800000>;
151			regulator-max-microvolt = <1800000>;
152		};
153
154		pm8994_l10: l10 {
155			regulator-min-microvolt = <1800000>;
156			regulator-max-microvolt = <1800000>;
157		};
158
159		pm8994_l11: l11 {
160			regulator-min-microvolt = <1200000>;
161			regulator-max-microvolt = <1200000>;
162		};
163
164		pm8994_l12: l12 {
165			regulator-min-microvolt = <1800000>;
166			regulator-max-microvolt = <1800000>;
167		};
168
169		pm8994_l13: l13 {
170			regulator-min-microvolt = <1800000>;
171			regulator-max-microvolt = <2950000>;
172		};
173
174		pm8994_l14: l14 {
175			regulator-min-microvolt = <1200000>;
176			regulator-max-microvolt = <1200000>;
177		};
178
179		pm8994_l15: l15 {
180			regulator-min-microvolt = <1800000>;
181			regulator-max-microvolt = <1800000>;
182		};
183
184		pm8994_l16: l16 {
185			regulator-min-microvolt = <2700000>;
186			regulator-max-microvolt = <2700000>;
187		};
188
189		pm8994_l17: l17 {
190			regulator-min-microvolt = <2700000>;
191			regulator-max-microvolt = <2700000>;
192		};
193
194		pm8994_l18: l18 {
195			regulator-min-microvolt = <3000000>;
196			regulator-max-microvolt = <3000000>;
197		};
198
199		pm8994_l19: l19 {
200			regulator-min-microvolt = <1800000>;
201			regulator-max-microvolt = <1800000>;
202		};
203
204		pm8994_l20: l20 {
205			regulator-min-microvolt = <2950000>;
206			regulator-max-microvolt = <2950000>;
207			regulator-always-on;
208			regulator-boot-on;
209			regulator-allow-set-load;
210			regulator-system-load = <570000>;
211		};
212
213		pm8994_l21: l21 {
214			regulator-min-microvolt = <1800000>;
215			regulator-max-microvolt = <1800000>;
216			regulator-always-on;
217		};
218
219		pm8994_l22: l22 {
220			regulator-min-microvolt = <3100000>;
221			regulator-max-microvolt = <3100000>;
222		};
223
224		pm8994_l23: l23 {
225			regulator-min-microvolt = <2800000>;
226			regulator-max-microvolt = <2800000>;
227		};
228
229		pm8994_l24: l24 {
230			regulator-min-microvolt = <3075000>;
231			regulator-max-microvolt = <3150000>;
232		};
233
234		pm8994_l25: l25 {
235			regulator-min-microvolt = <1800000>;
236			regulator-max-microvolt = <1800000>;
237		};
238
239		pm8994_l26: l26 {
240			/*
241			 * TODO: value from downstream
242			 * regulator-min-microvolt = <987500>;
243			 * fails to apply
244			 */
245		};
246
247		pm8994_l27: l27 {
248			regulator-min-microvolt = <1050000>;
249			regulator-max-microvolt = <1050000>;
250		};
251
252		pm8994_l28: l28 {
253			regulator-min-microvolt = <1000000>;
254			regulator-max-microvolt = <1000000>;
255		};
256
257		pm8994_l29: l29 {
258			/*
259			 * TODO: Unsupported voltage range.
260			 * regulator-min-microvolt = <2800000>;
261			 * regulator-max-microvolt = <2800000>;
262			 */
263		};
264
265		pm8994_l30: l30 {
266			/*
267			 * TODO: get this verified
268			 * regulator-min-microvolt = <1800000>;
269			 * regulator-max-microvolt = <1800000>;
270			 */
271		};
272
273		pm8994_l31: l31 {
274			regulator-min-microvolt = <1262500>;
275			regulator-max-microvolt = <1262500>;
276		};
277
278		pm8994_l32: l32 {
279			/*
280			 * TODO: get this verified
281			 * regulator-min-microvolt = <1800000>;
282			 * regulator-max-microvolt = <1800000>;
283			 */
284		};
285	};
286
287	pmi8994_regulators: regulators-1 {
288		compatible = "qcom,rpm-pmi8994-regulators";
289
290		vdd_s1-supply = <&vph_pwr>;
291		vdd_bst_byp-supply = <&vph_pwr>;
292
293		pmi8994_s1: s1 {};
294
295		/* S2 & S3 - VDD_GFX */
296
297		pmi8994_bby: boost-bypass {};
298	};
299};
300
301&sdhc1 {
302	status = "okay";
303
304	mmc-hs400-1_8v;
305};
306