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