xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/sdm845-lg-common.dtsi (revision b97ee269eae3cbaf35c18f51a459aea581c2a7dc)
1*b97ee269SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*b97ee269SEmmanuel Vadot/*
3*b97ee269SEmmanuel Vadot * SDM845 LG G7 / V35 (judyln / judyp) common device tree
4*b97ee269SEmmanuel Vadot *
5*b97ee269SEmmanuel Vadot * Copyright (c) 2022, The Linux Foundation. All rights reserved.
6*b97ee269SEmmanuel Vadot */
7*b97ee269SEmmanuel Vadot
8*b97ee269SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
9*b97ee269SEmmanuel Vadot#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
10*b97ee269SEmmanuel Vadot#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
11*b97ee269SEmmanuel Vadot
12*b97ee269SEmmanuel Vadot#include "sdm845.dtsi"
13*b97ee269SEmmanuel Vadot#include "pm8998.dtsi"
14*b97ee269SEmmanuel Vadot#include "pmi8998.dtsi"
15*b97ee269SEmmanuel Vadot
16*b97ee269SEmmanuel Vadot/delete-node/ &adsp_mem;
17*b97ee269SEmmanuel Vadot/delete-node/ &cdsp_mem;
18*b97ee269SEmmanuel Vadot/delete-node/ &gpu_mem;
19*b97ee269SEmmanuel Vadot/delete-node/ &ipa_fw_mem;
20*b97ee269SEmmanuel Vadot/delete-node/ &mba_region;
21*b97ee269SEmmanuel Vadot/delete-node/ &mpss_region;
22*b97ee269SEmmanuel Vadot/delete-node/ &qseecom_mem;
23*b97ee269SEmmanuel Vadot/delete-node/ &rmtfs_mem;
24*b97ee269SEmmanuel Vadot/delete-node/ &slpi_mem;
25*b97ee269SEmmanuel Vadot/delete-node/ &spss_mem;
26*b97ee269SEmmanuel Vadot/delete-node/ &venus_mem;
27*b97ee269SEmmanuel Vadot/delete-node/ &wlan_msa_mem;
28*b97ee269SEmmanuel Vadot
29*b97ee269SEmmanuel Vadot/ {
30*b97ee269SEmmanuel Vadot	chosen {
31*b97ee269SEmmanuel Vadot		#address-cells = <2>;
32*b97ee269SEmmanuel Vadot		#size-cells = <2>;
33*b97ee269SEmmanuel Vadot		ranges;
34*b97ee269SEmmanuel Vadot	};
35*b97ee269SEmmanuel Vadot
36*b97ee269SEmmanuel Vadot	reserved-memory {
37*b97ee269SEmmanuel Vadot		#address-cells = <2>;
38*b97ee269SEmmanuel Vadot		#size-cells = <2>;
39*b97ee269SEmmanuel Vadot		ranges;
40*b97ee269SEmmanuel Vadot
41*b97ee269SEmmanuel Vadot		qseecom_mem: memory@b2000000 {
42*b97ee269SEmmanuel Vadot			reg = <0 0xb2000000 0 0x1800000>;
43*b97ee269SEmmanuel Vadot			no-map;
44*b97ee269SEmmanuel Vadot		};
45*b97ee269SEmmanuel Vadot
46*b97ee269SEmmanuel Vadot		gpu_mem: memory@8c415000 {
47*b97ee269SEmmanuel Vadot			reg = <0 0x8c415000 0 0x2000>;
48*b97ee269SEmmanuel Vadot			no-map;
49*b97ee269SEmmanuel Vadot		};
50*b97ee269SEmmanuel Vadot
51*b97ee269SEmmanuel Vadot		ipa_fw_mem: memory@8c400000 {
52*b97ee269SEmmanuel Vadot			reg = <0 0x8c400000 0 0x10000>;
53*b97ee269SEmmanuel Vadot			no-map;
54*b97ee269SEmmanuel Vadot		};
55*b97ee269SEmmanuel Vadot
56*b97ee269SEmmanuel Vadot		adsp_mem: memory@8c500000 {
57*b97ee269SEmmanuel Vadot			reg = <0 0x8c500000 0 0x1e00000>;
58*b97ee269SEmmanuel Vadot			no-map;
59*b97ee269SEmmanuel Vadot		};
60*b97ee269SEmmanuel Vadot
61*b97ee269SEmmanuel Vadot		wlan_msa_mem: memory@8e300000 {
62*b97ee269SEmmanuel Vadot			reg = <0 0x8e300000 0 0x100000>;
63*b97ee269SEmmanuel Vadot			no-map;
64*b97ee269SEmmanuel Vadot		};
65*b97ee269SEmmanuel Vadot
66*b97ee269SEmmanuel Vadot		mpss_region: memory@8e400000 {
67*b97ee269SEmmanuel Vadot			reg = <0 0x8e400000 0 0x8900000>;
68*b97ee269SEmmanuel Vadot			no-map;
69*b97ee269SEmmanuel Vadot		};
70*b97ee269SEmmanuel Vadot
71*b97ee269SEmmanuel Vadot		venus_mem: memory@96d00000 {
72*b97ee269SEmmanuel Vadot			reg = <0 0x96d00000 0 0x500000>;
73*b97ee269SEmmanuel Vadot			no-map;
74*b97ee269SEmmanuel Vadot		};
75*b97ee269SEmmanuel Vadot
76*b97ee269SEmmanuel Vadot		cdsp_mem: memory@97200000 {
77*b97ee269SEmmanuel Vadot			reg = <0 0x97200000 0 0x800000>;
78*b97ee269SEmmanuel Vadot			no-map;
79*b97ee269SEmmanuel Vadot		};
80*b97ee269SEmmanuel Vadot
81*b97ee269SEmmanuel Vadot		mba_region: memory@97a00000 {
82*b97ee269SEmmanuel Vadot			reg = <0 0x97a00000 0 0x200000>;
83*b97ee269SEmmanuel Vadot			no-map;
84*b97ee269SEmmanuel Vadot		};
85*b97ee269SEmmanuel Vadot
86*b97ee269SEmmanuel Vadot		slpi_mem: memory@97c00000 {
87*b97ee269SEmmanuel Vadot			reg = <0 0x97c00000 0 0x1400000>;
88*b97ee269SEmmanuel Vadot			no-map;
89*b97ee269SEmmanuel Vadot		};
90*b97ee269SEmmanuel Vadot
91*b97ee269SEmmanuel Vadot		spss_mem: memory@99000000 {
92*b97ee269SEmmanuel Vadot			reg = <0 0x99000000 0 0x100000>;
93*b97ee269SEmmanuel Vadot			no-map;
94*b97ee269SEmmanuel Vadot		};
95*b97ee269SEmmanuel Vadot
96*b97ee269SEmmanuel Vadot		/* Framebuffer region */
97*b97ee269SEmmanuel Vadot		memory@9d400000 {
98*b97ee269SEmmanuel Vadot			reg = <0x0 0x9d400000 0x0 0x2400000>;
99*b97ee269SEmmanuel Vadot			no-map;
100*b97ee269SEmmanuel Vadot		};
101*b97ee269SEmmanuel Vadot
102*b97ee269SEmmanuel Vadot		/* rmtfs lower guard */
103*b97ee269SEmmanuel Vadot		memory@f0800000 {
104*b97ee269SEmmanuel Vadot			reg = <0 0xf0800000 0 0x1000>;
105*b97ee269SEmmanuel Vadot			no-map;
106*b97ee269SEmmanuel Vadot		};
107*b97ee269SEmmanuel Vadot
108*b97ee269SEmmanuel Vadot		rmtfs_mem: memory@f0801000 {
109*b97ee269SEmmanuel Vadot			compatible = "qcom,rmtfs-mem";
110*b97ee269SEmmanuel Vadot			reg = <0 0xf0801000 0 0x200000>;
111*b97ee269SEmmanuel Vadot			no-map;
112*b97ee269SEmmanuel Vadot
113*b97ee269SEmmanuel Vadot			qcom,client-id = <1>;
114*b97ee269SEmmanuel Vadot			qcom,vmid = <15>;
115*b97ee269SEmmanuel Vadot		};
116*b97ee269SEmmanuel Vadot
117*b97ee269SEmmanuel Vadot		/* rmtfs upper guard */
118*b97ee269SEmmanuel Vadot		memory@f0a01000 {
119*b97ee269SEmmanuel Vadot			reg = <0 0xf0a01000 0 0x1000>;
120*b97ee269SEmmanuel Vadot			no-map;
121*b97ee269SEmmanuel Vadot		};
122*b97ee269SEmmanuel Vadot	};
123*b97ee269SEmmanuel Vadot
124*b97ee269SEmmanuel Vadot	gpio-keys {
125*b97ee269SEmmanuel Vadot		compatible = "gpio-keys";
126*b97ee269SEmmanuel Vadot
127*b97ee269SEmmanuel Vadot		pinctrl-names = "default";
128*b97ee269SEmmanuel Vadot		pinctrl-0 = <&vol_up_pin_a>;
129*b97ee269SEmmanuel Vadot
130*b97ee269SEmmanuel Vadot		label = "GPIO Buttons";
131*b97ee269SEmmanuel Vadot
132*b97ee269SEmmanuel Vadot		key-vol-up {
133*b97ee269SEmmanuel Vadot			label = "Volume up";
134*b97ee269SEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
135*b97ee269SEmmanuel Vadot			gpios = <&pm8998_gpio 6 GPIO_ACTIVE_LOW>;
136*b97ee269SEmmanuel Vadot		};
137*b97ee269SEmmanuel Vadot	};
138*b97ee269SEmmanuel Vadot
139*b97ee269SEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
140*b97ee269SEmmanuel Vadot		compatible = "regulator-fixed";
141*b97ee269SEmmanuel Vadot		regulator-name = "vph_pwr";
142*b97ee269SEmmanuel Vadot		regulator-min-microvolt = <3700000>;
143*b97ee269SEmmanuel Vadot		regulator-max-microvolt = <3700000>;
144*b97ee269SEmmanuel Vadot	};
145*b97ee269SEmmanuel Vadot
146*b97ee269SEmmanuel Vadot	/*
147*b97ee269SEmmanuel Vadot	 * Apparently RPMh does not provide support for PM8998 S4 because it
148*b97ee269SEmmanuel Vadot	 * is always-on; model it as a fixed regulator.
149*b97ee269SEmmanuel Vadot	 */
150*b97ee269SEmmanuel Vadot	vreg_s4a_1p8: pm8998-smps4-regulator {
151*b97ee269SEmmanuel Vadot		compatible = "regulator-fixed";
152*b97ee269SEmmanuel Vadot		regulator-name = "vreg_s4a_1p8";
153*b97ee269SEmmanuel Vadot
154*b97ee269SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
155*b97ee269SEmmanuel Vadot		regulator-max-microvolt = <1800000>;
156*b97ee269SEmmanuel Vadot
157*b97ee269SEmmanuel Vadot		regulator-always-on;
158*b97ee269SEmmanuel Vadot		regulator-boot-on;
159*b97ee269SEmmanuel Vadot
160*b97ee269SEmmanuel Vadot		vin-supply = <&vph_pwr>;
161*b97ee269SEmmanuel Vadot	};
162*b97ee269SEmmanuel Vadot};
163*b97ee269SEmmanuel Vadot
164*b97ee269SEmmanuel Vadot&adsp_pas {
165*b97ee269SEmmanuel Vadot	status = "okay";
166*b97ee269SEmmanuel Vadot};
167*b97ee269SEmmanuel Vadot
168*b97ee269SEmmanuel Vadot&apps_rsc {
169*b97ee269SEmmanuel Vadot	pm8998-rpmh-regulators {
170*b97ee269SEmmanuel Vadot		compatible = "qcom,pm8998-rpmh-regulators";
171*b97ee269SEmmanuel Vadot		qcom,pmic-id = "a";
172*b97ee269SEmmanuel Vadot
173*b97ee269SEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
174*b97ee269SEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
175*b97ee269SEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
176*b97ee269SEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
177*b97ee269SEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
178*b97ee269SEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
179*b97ee269SEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
180*b97ee269SEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
181*b97ee269SEmmanuel Vadot		vdd-s9-supply = <&vph_pwr>;
182*b97ee269SEmmanuel Vadot		vdd-s10-supply = <&vph_pwr>;
183*b97ee269SEmmanuel Vadot		vdd-s11-supply = <&vph_pwr>;
184*b97ee269SEmmanuel Vadot		vdd-s12-supply = <&vph_pwr>;
185*b97ee269SEmmanuel Vadot		vdd-s13-supply = <&vph_pwr>;
186*b97ee269SEmmanuel Vadot		vdd-l1-l27-supply = <&vreg_s7a_1p025>;
187*b97ee269SEmmanuel Vadot		vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
188*b97ee269SEmmanuel Vadot		vdd-l3-l11-supply = <&vreg_s7a_1p025>;
189*b97ee269SEmmanuel Vadot		vdd-l4-l5-supply = <&vreg_s7a_1p025>;
190*b97ee269SEmmanuel Vadot		vdd-l6-supply = <&vph_pwr>;
191*b97ee269SEmmanuel Vadot		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
192*b97ee269SEmmanuel Vadot		vdd-l9-supply = <&vreg_bob>;
193*b97ee269SEmmanuel Vadot		vdd-l10-l23-l25-supply = <&vreg_bob>;
194*b97ee269SEmmanuel Vadot		vdd-l13-l19-l21-supply = <&vreg_bob>;
195*b97ee269SEmmanuel Vadot		vdd-l16-l28-supply = <&vreg_bob>;
196*b97ee269SEmmanuel Vadot		vdd-l18-l22-supply = <&vreg_bob>;
197*b97ee269SEmmanuel Vadot		vdd-l20-l24-supply = <&vreg_bob>;
198*b97ee269SEmmanuel Vadot		vdd-l26-supply = <&vreg_s3a_1p35>;
199*b97ee269SEmmanuel Vadot		vin-lvs-1-2-supply = <&vreg_s4a_1p8>;
200*b97ee269SEmmanuel Vadot
201*b97ee269SEmmanuel Vadot		vreg_s2a_1p125: smps2 {
202*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1100000>;
203*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1100000>;
204*b97ee269SEmmanuel Vadot		};
205*b97ee269SEmmanuel Vadot
206*b97ee269SEmmanuel Vadot		vreg_s3a_1p35: smps3 {
207*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1352000>;
208*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1352000>;
209*b97ee269SEmmanuel Vadot		};
210*b97ee269SEmmanuel Vadot
211*b97ee269SEmmanuel Vadot		vreg_s5a_2p04: smps5 {
212*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1904000>;
213*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2040000>;
214*b97ee269SEmmanuel Vadot		};
215*b97ee269SEmmanuel Vadot
216*b97ee269SEmmanuel Vadot		vreg_s7a_1p025: smps7 {
217*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <900000>;
218*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1028000>;
219*b97ee269SEmmanuel Vadot		};
220*b97ee269SEmmanuel Vadot
221*b97ee269SEmmanuel Vadot		vdd_qusb_hs0:
222*b97ee269SEmmanuel Vadot		vdda_hp_pcie_core:
223*b97ee269SEmmanuel Vadot		vdda_mipi_csi0_0p9:
224*b97ee269SEmmanuel Vadot		vdda_mipi_csi1_0p9:
225*b97ee269SEmmanuel Vadot		vdda_mipi_csi2_0p9:
226*b97ee269SEmmanuel Vadot		vdda_mipi_dsi0_pll:
227*b97ee269SEmmanuel Vadot		vdda_mipi_dsi1_pll:
228*b97ee269SEmmanuel Vadot		vdda_qlink_lv:
229*b97ee269SEmmanuel Vadot		vdda_qlink_lv_ck:
230*b97ee269SEmmanuel Vadot		vdda_qrefs_0p875:
231*b97ee269SEmmanuel Vadot		vdda_pcie_core:
232*b97ee269SEmmanuel Vadot		vdda_pll_cc_ebi01:
233*b97ee269SEmmanuel Vadot		vdda_pll_cc_ebi23:
234*b97ee269SEmmanuel Vadot		vdda_sp_sensor:
235*b97ee269SEmmanuel Vadot		vdda_ufs1_core:
236*b97ee269SEmmanuel Vadot		vdda_ufs2_core:
237*b97ee269SEmmanuel Vadot		vdda_usb1_ss_core:
238*b97ee269SEmmanuel Vadot		vdda_usb2_ss_core:
239*b97ee269SEmmanuel Vadot		vreg_l1a_0p875: ldo1 {
240*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <880000>;
241*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <880000>;
242*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
243*b97ee269SEmmanuel Vadot		};
244*b97ee269SEmmanuel Vadot
245*b97ee269SEmmanuel Vadot		vddpx_10:
246*b97ee269SEmmanuel Vadot		vreg_l2a_1p2: ldo2 {
247*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1200000>;
248*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1200000>;
249*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
250*b97ee269SEmmanuel Vadot			regulator-always-on;
251*b97ee269SEmmanuel Vadot		};
252*b97ee269SEmmanuel Vadot
253*b97ee269SEmmanuel Vadot		vreg_l3a_1p0: ldo3 {
254*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1000000>;
255*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1000000>;
256*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
257*b97ee269SEmmanuel Vadot		};
258*b97ee269SEmmanuel Vadot
259*b97ee269SEmmanuel Vadot		vdd_wcss_cx:
260*b97ee269SEmmanuel Vadot		vdd_wcss_mx:
261*b97ee269SEmmanuel Vadot		vdda_wcss_pll:
262*b97ee269SEmmanuel Vadot		vreg_l5a_0p8: ldo5 {
263*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <800000>;
264*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <800000>;
265*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
266*b97ee269SEmmanuel Vadot		};
267*b97ee269SEmmanuel Vadot
268*b97ee269SEmmanuel Vadot		vddpx_13:
269*b97ee269SEmmanuel Vadot		vreg_l6a_1p8: ldo6 {
270*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1856000>;
271*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1856000>;
272*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
273*b97ee269SEmmanuel Vadot		};
274*b97ee269SEmmanuel Vadot
275*b97ee269SEmmanuel Vadot		vreg_l7a_1p8: ldo7 {
276*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
277*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
278*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
279*b97ee269SEmmanuel Vadot		};
280*b97ee269SEmmanuel Vadot
281*b97ee269SEmmanuel Vadot		vreg_l8a_1p2: ldo8 {
282*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1200000>;
283*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1248000>;
284*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
285*b97ee269SEmmanuel Vadot		};
286*b97ee269SEmmanuel Vadot
287*b97ee269SEmmanuel Vadot		vreg_l9a_1p8: ldo9 {
288*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1704000>;
289*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2928000>;
290*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
291*b97ee269SEmmanuel Vadot		};
292*b97ee269SEmmanuel Vadot
293*b97ee269SEmmanuel Vadot		vreg_l10a_1p8: ldo10 {
294*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1704000>;
295*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2928000>;
296*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
297*b97ee269SEmmanuel Vadot		};
298*b97ee269SEmmanuel Vadot
299*b97ee269SEmmanuel Vadot		vreg_l11a_1p0: ldo11 {
300*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1000000>;
301*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1048000>;
302*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
303*b97ee269SEmmanuel Vadot		};
304*b97ee269SEmmanuel Vadot
305*b97ee269SEmmanuel Vadot		vdd_qfprom:
306*b97ee269SEmmanuel Vadot		vdd_qfprom_sp:
307*b97ee269SEmmanuel Vadot		vdda_apc1_cs_1p8:
308*b97ee269SEmmanuel Vadot		vdda_gfx_cs_1p8:
309*b97ee269SEmmanuel Vadot		vdda_qrefs_1p8:
310*b97ee269SEmmanuel Vadot		vdda_qusb_hs0_1p8:
311*b97ee269SEmmanuel Vadot		vddpx_11:
312*b97ee269SEmmanuel Vadot		vreg_l12a_1p8: ldo12 {
313*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
314*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
315*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
316*b97ee269SEmmanuel Vadot		};
317*b97ee269SEmmanuel Vadot
318*b97ee269SEmmanuel Vadot		vddpx_2:
319*b97ee269SEmmanuel Vadot		vreg_l13a_2p95: ldo13 {
320*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
321*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2960000>;
322*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
323*b97ee269SEmmanuel Vadot		};
324*b97ee269SEmmanuel Vadot
325*b97ee269SEmmanuel Vadot		vreg_l14a_1p88: ldo14 {
326*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
327*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1880000>;
328*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
329*b97ee269SEmmanuel Vadot		};
330*b97ee269SEmmanuel Vadot
331*b97ee269SEmmanuel Vadot		vreg_l15a_1p8: ldo15 {
332*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
333*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
334*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
335*b97ee269SEmmanuel Vadot		};
336*b97ee269SEmmanuel Vadot
337*b97ee269SEmmanuel Vadot		vreg_l17a_1p3: ldo17 {
338*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1304000>;
339*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1304000>;
340*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
341*b97ee269SEmmanuel Vadot		};
342*b97ee269SEmmanuel Vadot
343*b97ee269SEmmanuel Vadot		vreg_l18a_2p7: ldo18 {
344*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <2704000>;
345*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2960000>;
346*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
347*b97ee269SEmmanuel Vadot		};
348*b97ee269SEmmanuel Vadot
349*b97ee269SEmmanuel Vadot		vreg_l20a_2p95: ldo20 {
350*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <2704000>;
351*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2960000>;
352*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
353*b97ee269SEmmanuel Vadot		};
354*b97ee269SEmmanuel Vadot
355*b97ee269SEmmanuel Vadot		vreg_l21a_2p95: ldo21 {
356*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <2704000>;
357*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2960000>;
358*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
359*b97ee269SEmmanuel Vadot		};
360*b97ee269SEmmanuel Vadot
361*b97ee269SEmmanuel Vadot		vreg_l22a_2p85: ldo22 {
362*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <2800000>;
363*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <2800000>;
364*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
365*b97ee269SEmmanuel Vadot		};
366*b97ee269SEmmanuel Vadot
367*b97ee269SEmmanuel Vadot		vreg_l23a_3p3: ldo23 {
368*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <3000000>;
369*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <3312000>;
370*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
371*b97ee269SEmmanuel Vadot		};
372*b97ee269SEmmanuel Vadot
373*b97ee269SEmmanuel Vadot		vdda_qusb_hs0_3p1:
374*b97ee269SEmmanuel Vadot		vreg_l24a_3p075: ldo24 {
375*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <3088000>;
376*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <3088000>;
377*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
378*b97ee269SEmmanuel Vadot		};
379*b97ee269SEmmanuel Vadot
380*b97ee269SEmmanuel Vadot		vreg_l25a_3p3: ldo25 {
381*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <3000000>;
382*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <3312000>;
383*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
384*b97ee269SEmmanuel Vadot		};
385*b97ee269SEmmanuel Vadot
386*b97ee269SEmmanuel Vadot		vdda_hp_pcie_1p2:
387*b97ee269SEmmanuel Vadot		vdda_hv_ebi0:
388*b97ee269SEmmanuel Vadot		vdda_hv_ebi1:
389*b97ee269SEmmanuel Vadot		vdda_hv_ebi2:
390*b97ee269SEmmanuel Vadot		vdda_hv_ebi3:
391*b97ee269SEmmanuel Vadot		vdda_mipi_csi_1p25:
392*b97ee269SEmmanuel Vadot		vdda_mipi_dsi0_1p2:
393*b97ee269SEmmanuel Vadot		vdda_mipi_dsi1_1p2:
394*b97ee269SEmmanuel Vadot		vdda_pcie_1p2:
395*b97ee269SEmmanuel Vadot		vdda_ufs1_1p2:
396*b97ee269SEmmanuel Vadot		vdda_ufs2_1p2:
397*b97ee269SEmmanuel Vadot		vdda_usb1_ss_1p2:
398*b97ee269SEmmanuel Vadot		vdda_usb2_ss_1p2:
399*b97ee269SEmmanuel Vadot		vreg_l26a_1p2: ldo26 {
400*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1200000>;
401*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1200000>;
402*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
403*b97ee269SEmmanuel Vadot		};
404*b97ee269SEmmanuel Vadot
405*b97ee269SEmmanuel Vadot		vreg_l28a_3p0: ldo28 {
406*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
407*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
408*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
409*b97ee269SEmmanuel Vadot		};
410*b97ee269SEmmanuel Vadot
411*b97ee269SEmmanuel Vadot		vreg_lvs1a_1p8: lvs1 {
412*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
413*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
414*b97ee269SEmmanuel Vadot		};
415*b97ee269SEmmanuel Vadot
416*b97ee269SEmmanuel Vadot		vreg_lvs2a_1p8: lvs2 {
417*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
418*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
419*b97ee269SEmmanuel Vadot		};
420*b97ee269SEmmanuel Vadot	};
421*b97ee269SEmmanuel Vadot
422*b97ee269SEmmanuel Vadot	pmi8998-rpmh-regulators {
423*b97ee269SEmmanuel Vadot		compatible = "qcom,pmi8998-rpmh-regulators";
424*b97ee269SEmmanuel Vadot		qcom,pmic-id = "b";
425*b97ee269SEmmanuel Vadot
426*b97ee269SEmmanuel Vadot		vdd-bob-supply = <&vph_pwr>;
427*b97ee269SEmmanuel Vadot
428*b97ee269SEmmanuel Vadot		vreg_bob: bob {
429*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <3312000>;
430*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <3600000>;
431*b97ee269SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
432*b97ee269SEmmanuel Vadot			regulator-allow-bypass;
433*b97ee269SEmmanuel Vadot		};
434*b97ee269SEmmanuel Vadot	};
435*b97ee269SEmmanuel Vadot
436*b97ee269SEmmanuel Vadot	pm8005-rpmh-regulators {
437*b97ee269SEmmanuel Vadot		compatible = "qcom,pm8005-rpmh-regulators";
438*b97ee269SEmmanuel Vadot		qcom,pmic-id = "c";
439*b97ee269SEmmanuel Vadot
440*b97ee269SEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
441*b97ee269SEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
442*b97ee269SEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
443*b97ee269SEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
444*b97ee269SEmmanuel Vadot
445*b97ee269SEmmanuel Vadot		vreg_s3c_0p6: smps3 {
446*b97ee269SEmmanuel Vadot			regulator-min-microvolt = <600000>;
447*b97ee269SEmmanuel Vadot			regulator-max-microvolt = <600000>;
448*b97ee269SEmmanuel Vadot		};
449*b97ee269SEmmanuel Vadot	};
450*b97ee269SEmmanuel Vadot};
451*b97ee269SEmmanuel Vadot
452*b97ee269SEmmanuel Vadot&cdsp_pas {
453*b97ee269SEmmanuel Vadot	status = "okay";
454*b97ee269SEmmanuel Vadot};
455*b97ee269SEmmanuel Vadot
456*b97ee269SEmmanuel Vadot&dispcc {
457*b97ee269SEmmanuel Vadot	status = "disabled";
458*b97ee269SEmmanuel Vadot};
459*b97ee269SEmmanuel Vadot
460*b97ee269SEmmanuel Vadot&gcc {
461*b97ee269SEmmanuel Vadot	protected-clocks = <GCC_QSPI_CORE_CLK>,
462*b97ee269SEmmanuel Vadot			   <GCC_QSPI_CORE_CLK_SRC>,
463*b97ee269SEmmanuel Vadot			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
464*b97ee269SEmmanuel Vadot			   <GCC_LPASS_Q6_AXI_CLK>,
465*b97ee269SEmmanuel Vadot			   <GCC_LPASS_SWAY_CLK>;
466*b97ee269SEmmanuel Vadot};
467*b97ee269SEmmanuel Vadot
468*b97ee269SEmmanuel Vadot&gpu {
469*b97ee269SEmmanuel Vadot	status = "okay";
470*b97ee269SEmmanuel Vadot
471*b97ee269SEmmanuel Vadot	zap-shader {
472*b97ee269SEmmanuel Vadot		memory-region = <&gpu_mem>;
473*b97ee269SEmmanuel Vadot	};
474*b97ee269SEmmanuel Vadot};
475*b97ee269SEmmanuel Vadot
476*b97ee269SEmmanuel Vadot&ipa {
477*b97ee269SEmmanuel Vadot	status = "okay";
478*b97ee269SEmmanuel Vadot	modem-init;
479*b97ee269SEmmanuel Vadot};
480*b97ee269SEmmanuel Vadot
481*b97ee269SEmmanuel Vadot&mss_pil {
482*b97ee269SEmmanuel Vadot	status = "okay";
483*b97ee269SEmmanuel Vadot};
484*b97ee269SEmmanuel Vadot
485*b97ee269SEmmanuel Vadot&pm8998_pon {
486*b97ee269SEmmanuel Vadot	resin {
487*b97ee269SEmmanuel Vadot		compatible = "qcom,pm8941-resin";
488*b97ee269SEmmanuel Vadot		interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
489*b97ee269SEmmanuel Vadot		debounce = <15625>;
490*b97ee269SEmmanuel Vadot		bias-pull-up;
491*b97ee269SEmmanuel Vadot		linux,code = <KEY_VOLUMEDOWN>;
492*b97ee269SEmmanuel Vadot	};
493*b97ee269SEmmanuel Vadot};
494*b97ee269SEmmanuel Vadot
495*b97ee269SEmmanuel Vadot&sdhc_2 {
496*b97ee269SEmmanuel Vadot	status = "okay";
497*b97ee269SEmmanuel Vadot
498*b97ee269SEmmanuel Vadot	cd-gpios = <&tlmm 126 GPIO_ACTIVE_LOW>;
499*b97ee269SEmmanuel Vadot
500*b97ee269SEmmanuel Vadot	pinctrl-names = "default";
501*b97ee269SEmmanuel Vadot	pinctrl-0 = <&sdc2_clk &sdc2_cmd &sdc2_data &sd_card_det_n>;
502*b97ee269SEmmanuel Vadot
503*b97ee269SEmmanuel Vadot	vmmc-supply = <&vreg_l21a_2p95>;
504*b97ee269SEmmanuel Vadot	vqmmc-supply = <&vddpx_2>;
505*b97ee269SEmmanuel Vadot};
506*b97ee269SEmmanuel Vadot
507*b97ee269SEmmanuel Vadot/*
508*b97ee269SEmmanuel Vadot * UFS works partially and only with clk_ignore_unused.
509*b97ee269SEmmanuel Vadot * Sometimes it crashes with I/O errors.
510*b97ee269SEmmanuel Vadot */
511*b97ee269SEmmanuel Vadot&ufs_mem_hc {
512*b97ee269SEmmanuel Vadot	status = "okay";
513*b97ee269SEmmanuel Vadot
514*b97ee269SEmmanuel Vadot	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
515*b97ee269SEmmanuel Vadot
516*b97ee269SEmmanuel Vadot	vcc-supply = <&vreg_l20a_2p95>;
517*b97ee269SEmmanuel Vadot	vcc-max-microamp = <600000>;
518*b97ee269SEmmanuel Vadot};
519*b97ee269SEmmanuel Vadot
520*b97ee269SEmmanuel Vadot&ufs_mem_phy {
521*b97ee269SEmmanuel Vadot	status = "okay";
522*b97ee269SEmmanuel Vadot
523*b97ee269SEmmanuel Vadot	vdda-phy-supply = <&vdda_ufs1_core>;
524*b97ee269SEmmanuel Vadot	vdda-pll-supply = <&vdda_ufs1_1p2>;
525*b97ee269SEmmanuel Vadot};
526*b97ee269SEmmanuel Vadot
527*b97ee269SEmmanuel Vadot&usb_1 {
528*b97ee269SEmmanuel Vadot	status = "okay";
529*b97ee269SEmmanuel Vadot};
530*b97ee269SEmmanuel Vadot
531*b97ee269SEmmanuel Vadot&usb_1_dwc3 {
532*b97ee269SEmmanuel Vadot	/* TODO: these devices have usb id pin */
533*b97ee269SEmmanuel Vadot	dr_mode = "peripheral";
534*b97ee269SEmmanuel Vadot};
535*b97ee269SEmmanuel Vadot
536*b97ee269SEmmanuel Vadot&usb_1_hsphy {
537*b97ee269SEmmanuel Vadot	status = "okay";
538*b97ee269SEmmanuel Vadot
539*b97ee269SEmmanuel Vadot	vdd-supply = <&vdda_usb1_ss_core>;
540*b97ee269SEmmanuel Vadot	vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
541*b97ee269SEmmanuel Vadot	vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
542*b97ee269SEmmanuel Vadot
543*b97ee269SEmmanuel Vadot	qcom,imp-res-offset-value = <8>;
544*b97ee269SEmmanuel Vadot	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
545*b97ee269SEmmanuel Vadot	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
546*b97ee269SEmmanuel Vadot	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
547*b97ee269SEmmanuel Vadot};
548*b97ee269SEmmanuel Vadot
549*b97ee269SEmmanuel Vadot&usb_1_qmpphy {
550*b97ee269SEmmanuel Vadot	status = "okay";
551*b97ee269SEmmanuel Vadot
552*b97ee269SEmmanuel Vadot	vdda-phy-supply = <&vdda_usb1_ss_1p2>;
553*b97ee269SEmmanuel Vadot	vdda-pll-supply = <&vdda_usb1_ss_core>;
554*b97ee269SEmmanuel Vadot};
555*b97ee269SEmmanuel Vadot
556*b97ee269SEmmanuel Vadot/* PINCTRL - additions to nodes defined in sdm845.dtsi */
557*b97ee269SEmmanuel Vadot
558*b97ee269SEmmanuel Vadot&tlmm {
559*b97ee269SEmmanuel Vadot	gpio-reserved-ranges = <28 4>, <81 4>;
560*b97ee269SEmmanuel Vadot
561*b97ee269SEmmanuel Vadot	sdc2_clk: sdc2-clk {
562*b97ee269SEmmanuel Vadot		pinconf {
563*b97ee269SEmmanuel Vadot			pins = "sdc2_clk";
564*b97ee269SEmmanuel Vadot			bias-disable;
565*b97ee269SEmmanuel Vadot
566*b97ee269SEmmanuel Vadot			/*
567*b97ee269SEmmanuel Vadot			 * It seems that mmc_test reports errors if drive
568*b97ee269SEmmanuel Vadot			 * strength is not 16 on clk, cmd, and data pins.
569*b97ee269SEmmanuel Vadot			 *
570*b97ee269SEmmanuel Vadot			 * TODO: copy-pasted from mtp, try other values
571*b97ee269SEmmanuel Vadot			 * on these devices.
572*b97ee269SEmmanuel Vadot			 */
573*b97ee269SEmmanuel Vadot			drive-strength = <16>;
574*b97ee269SEmmanuel Vadot		};
575*b97ee269SEmmanuel Vadot	};
576*b97ee269SEmmanuel Vadot
577*b97ee269SEmmanuel Vadot	sdc2_cmd: sdc2-cmd {
578*b97ee269SEmmanuel Vadot		pinconf {
579*b97ee269SEmmanuel Vadot			pins = "sdc2_cmd";
580*b97ee269SEmmanuel Vadot			bias-pull-up;
581*b97ee269SEmmanuel Vadot			drive-strength = <16>;
582*b97ee269SEmmanuel Vadot		};
583*b97ee269SEmmanuel Vadot	};
584*b97ee269SEmmanuel Vadot
585*b97ee269SEmmanuel Vadot	sdc2_data: sdc2-data {
586*b97ee269SEmmanuel Vadot		pinconf {
587*b97ee269SEmmanuel Vadot			pins = "sdc2_data";
588*b97ee269SEmmanuel Vadot			bias-pull-up;
589*b97ee269SEmmanuel Vadot			drive-strength = <16>;
590*b97ee269SEmmanuel Vadot		};
591*b97ee269SEmmanuel Vadot	};
592*b97ee269SEmmanuel Vadot
593*b97ee269SEmmanuel Vadot	sd_card_det_n: sd-card-det-n {
594*b97ee269SEmmanuel Vadot		pinmux {
595*b97ee269SEmmanuel Vadot			pins = "gpio126";
596*b97ee269SEmmanuel Vadot			function = "gpio";
597*b97ee269SEmmanuel Vadot		};
598*b97ee269SEmmanuel Vadot
599*b97ee269SEmmanuel Vadot		pinconf {
600*b97ee269SEmmanuel Vadot			pins = "gpio126";
601*b97ee269SEmmanuel Vadot			bias-pull-up;
602*b97ee269SEmmanuel Vadot		};
603*b97ee269SEmmanuel Vadot	};
604*b97ee269SEmmanuel Vadot};
605*b97ee269SEmmanuel Vadot
606*b97ee269SEmmanuel Vadot&pm8998_gpio {
607*b97ee269SEmmanuel Vadot	vol_up_pin_a: vol-up-active-pins {
608*b97ee269SEmmanuel Vadot		pins = "gpio6";
609*b97ee269SEmmanuel Vadot		function = "normal";
610*b97ee269SEmmanuel Vadot		input-enable;
611*b97ee269SEmmanuel Vadot		bias-pull-up;
612*b97ee269SEmmanuel Vadot		qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
613*b97ee269SEmmanuel Vadot	};
614*b97ee269SEmmanuel Vadot};
615