xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/sdm845-google-common.dtsi (revision 6589b3d76db2d6adbf8f2084c303fb24252a0dc6)
1*a678adbfSDavid Heidelberg// SPDX-License-Identifier: GPL-2.0-only
2*a678adbfSDavid Heidelberg
3*a678adbfSDavid Heidelberg/dts-v1/;
4*a678adbfSDavid Heidelberg
5*a678adbfSDavid Heidelberg#include <dt-bindings/arm/qcom,ids.h>
6*a678adbfSDavid Heidelberg#include <dt-bindings/dma/qcom-gpi.h>
7*a678adbfSDavid Heidelberg#include <dt-bindings/input/linux-event-codes.h>
8*a678adbfSDavid Heidelberg#include <dt-bindings/interrupt-controller/irq.h>
9*a678adbfSDavid Heidelberg#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
10*a678adbfSDavid Heidelberg
11*a678adbfSDavid Heidelberg#include "sdm845.dtsi"
12*a678adbfSDavid Heidelberg#include "pm8998.dtsi"
13*a678adbfSDavid Heidelberg#include "pmi8998.dtsi"
14*a678adbfSDavid Heidelberg
15*a678adbfSDavid Heidelberg/delete-node/ &mpss_region;
16*a678adbfSDavid Heidelberg/delete-node/ &venus_mem;
17*a678adbfSDavid Heidelberg/delete-node/ &cdsp_mem;
18*a678adbfSDavid Heidelberg/delete-node/ &mba_region;
19*a678adbfSDavid Heidelberg/delete-node/ &slpi_mem;
20*a678adbfSDavid Heidelberg/delete-node/ &spss_mem;
21*a678adbfSDavid Heidelberg/delete-node/ &rmtfs_mem;
22*a678adbfSDavid Heidelberg
23*a678adbfSDavid Heidelberg/ {
24*a678adbfSDavid Heidelberg	chassis-type = "handset";
25*a678adbfSDavid Heidelberg	qcom,board-id = <0x00021505 0>;
26*a678adbfSDavid Heidelberg	qcom,msm-id = <QCOM_ID_SDM845 0x20001>;
27*a678adbfSDavid Heidelberg
28*a678adbfSDavid Heidelberg	aliases {
29*a678adbfSDavid Heidelberg		serial0 = &uart9;
30*a678adbfSDavid Heidelberg		serial1 = &uart6;
31*a678adbfSDavid Heidelberg	};
32*a678adbfSDavid Heidelberg
33*a678adbfSDavid Heidelberg	battery: battery {
34*a678adbfSDavid Heidelberg		compatible = "simple-battery";
35*a678adbfSDavid Heidelberg	};
36*a678adbfSDavid Heidelberg
37*a678adbfSDavid Heidelberg	chosen {
38*a678adbfSDavid Heidelberg		#address-cells = <2>;
39*a678adbfSDavid Heidelberg		#size-cells = <2>;
40*a678adbfSDavid Heidelberg		ranges;
41*a678adbfSDavid Heidelberg
42*a678adbfSDavid Heidelberg		stdout-path = "serial0:115200n8";
43*a678adbfSDavid Heidelberg
44*a678adbfSDavid Heidelberg		/* Use display framebuffer as setup by bootloader */
45*a678adbfSDavid Heidelberg		framebuffer0: framebuffer-0 {
46*a678adbfSDavid Heidelberg			compatible = "simple-framebuffer";
47*a678adbfSDavid Heidelberg			memory-region = <&cont_splash_mem>;
48*a678adbfSDavid Heidelberg
49*a678adbfSDavid Heidelberg			format = "a8r8g8b8";
50*a678adbfSDavid Heidelberg		};
51*a678adbfSDavid Heidelberg	};
52*a678adbfSDavid Heidelberg
53*a678adbfSDavid Heidelberg	reserved-memory {
54*a678adbfSDavid Heidelberg		cont_splash_mem: splash@9d400000 {
55*a678adbfSDavid Heidelberg			reg = <0 0x9d400000 0 0x02400000>;
56*a678adbfSDavid Heidelberg			no-map;
57*a678adbfSDavid Heidelberg		};
58*a678adbfSDavid Heidelberg
59*a678adbfSDavid Heidelberg		mpss_region: memory@8e000000 {
60*a678adbfSDavid Heidelberg			reg = <0 0x8e000000 0 0x9800000>;
61*a678adbfSDavid Heidelberg			no-map;
62*a678adbfSDavid Heidelberg		};
63*a678adbfSDavid Heidelberg
64*a678adbfSDavid Heidelberg		venus_mem: venus@97800000 {
65*a678adbfSDavid Heidelberg			reg = <0 0x97800000 0 0x500000>;
66*a678adbfSDavid Heidelberg			no-map;
67*a678adbfSDavid Heidelberg		};
68*a678adbfSDavid Heidelberg
69*a678adbfSDavid Heidelberg		cdsp_mem: cdsp-mem@97D00000 {
70*a678adbfSDavid Heidelberg			reg = <0 0x97D00000 0 0x800000>;
71*a678adbfSDavid Heidelberg			no-map;
72*a678adbfSDavid Heidelberg		};
73*a678adbfSDavid Heidelberg
74*a678adbfSDavid Heidelberg		mba_region: mba@98500000 {
75*a678adbfSDavid Heidelberg			reg = <0 0x98500000 0 0x200000>;
76*a678adbfSDavid Heidelberg			no-map;
77*a678adbfSDavid Heidelberg		};
78*a678adbfSDavid Heidelberg
79*a678adbfSDavid Heidelberg		slpi_mem: slpi@98700000 {
80*a678adbfSDavid Heidelberg			reg = <0 0x98700000 0 0x1400000>;
81*a678adbfSDavid Heidelberg			no-map;
82*a678adbfSDavid Heidelberg		};
83*a678adbfSDavid Heidelberg
84*a678adbfSDavid Heidelberg		spss_mem: spss@99B00000 {
85*a678adbfSDavid Heidelberg			reg = <0 0x99B00000 0 0x100000>;
86*a678adbfSDavid Heidelberg			no-map;
87*a678adbfSDavid Heidelberg		};
88*a678adbfSDavid Heidelberg
89*a678adbfSDavid Heidelberg		rmtfs_mem: rmtfs-region@f2700000 {
90*a678adbfSDavid Heidelberg			compatible = "qcom,rmtfs-mem";
91*a678adbfSDavid Heidelberg			reg = <0 0xf2700000 0 0x202000>;
92*a678adbfSDavid Heidelberg			qcom,use-guard-pages;
93*a678adbfSDavid Heidelberg			no-map;
94*a678adbfSDavid Heidelberg
95*a678adbfSDavid Heidelberg			qcom,client-id = <1>;
96*a678adbfSDavid Heidelberg			qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
97*a678adbfSDavid Heidelberg		};
98*a678adbfSDavid Heidelberg	};
99*a678adbfSDavid Heidelberg
100*a678adbfSDavid Heidelberg	gpio-keys {
101*a678adbfSDavid Heidelberg		compatible = "gpio-keys";
102*a678adbfSDavid Heidelberg		label = "Volume keys";
103*a678adbfSDavid Heidelberg		autorepeat;
104*a678adbfSDavid Heidelberg
105*a678adbfSDavid Heidelberg		pinctrl-0 = <&volume_up_gpio>;
106*a678adbfSDavid Heidelberg		pinctrl-names = "default";
107*a678adbfSDavid Heidelberg
108*a678adbfSDavid Heidelberg		key-vol-up {
109*a678adbfSDavid Heidelberg			label = "Volume Up";
110*a678adbfSDavid Heidelberg			linux,code = <KEY_VOLUMEUP>;
111*a678adbfSDavid Heidelberg			gpios = <&pm8998_gpios 6 GPIO_ACTIVE_LOW>;
112*a678adbfSDavid Heidelberg			debounce-interval = <15>;
113*a678adbfSDavid Heidelberg		};
114*a678adbfSDavid Heidelberg	};
115*a678adbfSDavid Heidelberg
116*a678adbfSDavid Heidelberg	vph_pwr: regulator-vph-pwr {
117*a678adbfSDavid Heidelberg		compatible = "regulator-fixed";
118*a678adbfSDavid Heidelberg		regulator-name = "vph_pwr";
119*a678adbfSDavid Heidelberg		regulator-min-microvolt = <3700000>;
120*a678adbfSDavid Heidelberg		regulator-max-microvolt = <3700000>;
121*a678adbfSDavid Heidelberg	};
122*a678adbfSDavid Heidelberg
123*a678adbfSDavid Heidelberg	vreg_s4a_1p8: regulator-vreg-s4a-1p8 {
124*a678adbfSDavid Heidelberg		compatible = "regulator-fixed";
125*a678adbfSDavid Heidelberg		regulator-name = "vreg_s4a_1p8";
126*a678adbfSDavid Heidelberg
127*a678adbfSDavid Heidelberg		regulator-min-microvolt = <1800000>;
128*a678adbfSDavid Heidelberg		regulator-max-microvolt = <1800000>;
129*a678adbfSDavid Heidelberg		regulator-always-on;
130*a678adbfSDavid Heidelberg		regulator-boot-on;
131*a678adbfSDavid Heidelberg
132*a678adbfSDavid Heidelberg		vin-supply = <&vph_pwr>;
133*a678adbfSDavid Heidelberg	};
134*a678adbfSDavid Heidelberg};
135*a678adbfSDavid Heidelberg
136*a678adbfSDavid Heidelberg&adsp_pas {
137*a678adbfSDavid Heidelberg	firmware-name = "qcom/sdm845/Google/blueline/adsp.mbn";
138*a678adbfSDavid Heidelberg
139*a678adbfSDavid Heidelberg	status = "okay";
140*a678adbfSDavid Heidelberg};
141*a678adbfSDavid Heidelberg
142*a678adbfSDavid Heidelberg&apps_rsc {
143*a678adbfSDavid Heidelberg	regulators-0 {
144*a678adbfSDavid Heidelberg		compatible = "qcom,pm8998-rpmh-regulators";
145*a678adbfSDavid Heidelberg		qcom,pmic-id = "a";
146*a678adbfSDavid Heidelberg
147*a678adbfSDavid Heidelberg		vdd-s1-supply = <&vph_pwr>;
148*a678adbfSDavid Heidelberg		vdd-s2-supply = <&vph_pwr>;
149*a678adbfSDavid Heidelberg		vdd-s3-supply = <&vph_pwr>;
150*a678adbfSDavid Heidelberg		vdd-s4-supply = <&vph_pwr>;
151*a678adbfSDavid Heidelberg		vdd-s5-supply = <&vph_pwr>;
152*a678adbfSDavid Heidelberg		vdd-s6-supply = <&vph_pwr>;
153*a678adbfSDavid Heidelberg		vdd-s7-supply = <&vph_pwr>;
154*a678adbfSDavid Heidelberg		vdd-s8-supply = <&vph_pwr>;
155*a678adbfSDavid Heidelberg		vdd-s9-supply = <&vph_pwr>;
156*a678adbfSDavid Heidelberg		vdd-s10-supply = <&vph_pwr>;
157*a678adbfSDavid Heidelberg		vdd-s11-supply = <&vph_pwr>;
158*a678adbfSDavid Heidelberg		vdd-s12-supply = <&vph_pwr>;
159*a678adbfSDavid Heidelberg		vdd-s13-supply = <&vph_pwr>;
160*a678adbfSDavid Heidelberg		vdd-l1-l27-supply = <&vreg_s7a_1p025>;
161*a678adbfSDavid Heidelberg		vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
162*a678adbfSDavid Heidelberg		vdd-l3-l11-supply = <&vreg_s7a_1p025>;
163*a678adbfSDavid Heidelberg		vdd-l4-l5-supply = <&vreg_s7a_1p025>;
164*a678adbfSDavid Heidelberg		vdd-l6-supply = <&vph_pwr>;
165*a678adbfSDavid Heidelberg		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
166*a678adbfSDavid Heidelberg		vdd-l9-supply = <&vreg_bob>;
167*a678adbfSDavid Heidelberg		vdd-l10-l23-l25-supply = <&vreg_bob>;
168*a678adbfSDavid Heidelberg		vdd-l13-l19-l21-supply = <&vreg_bob>;
169*a678adbfSDavid Heidelberg		vdd-l16-l28-supply = <&vreg_bob>;
170*a678adbfSDavid Heidelberg		vdd-l18-l22-supply = <&vreg_bob>;
171*a678adbfSDavid Heidelberg		vdd-l20-l24-supply = <&vreg_bob>;
172*a678adbfSDavid Heidelberg		vdd-l26-supply = <&vreg_s3a_1p35>;
173*a678adbfSDavid Heidelberg		vin-lvs-1-2-supply = <&vreg_s4a_1p8>;
174*a678adbfSDavid Heidelberg
175*a678adbfSDavid Heidelberg		vreg_s3a_1p35: smps3 {
176*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1352000>;
177*a678adbfSDavid Heidelberg			regulator-max-microvolt = <1352000>;
178*a678adbfSDavid Heidelberg		};
179*a678adbfSDavid Heidelberg
180*a678adbfSDavid Heidelberg		vreg_s5a_2p04: smps5 {
181*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1904000>;
182*a678adbfSDavid Heidelberg			regulator-max-microvolt = <2040000>;
183*a678adbfSDavid Heidelberg		};
184*a678adbfSDavid Heidelberg
185*a678adbfSDavid Heidelberg		vreg_s7a_1p025: smps7 {
186*a678adbfSDavid Heidelberg			regulator-min-microvolt = <900000>;
187*a678adbfSDavid Heidelberg			regulator-max-microvolt = <1028000>;
188*a678adbfSDavid Heidelberg		};
189*a678adbfSDavid Heidelberg
190*a678adbfSDavid Heidelberg		vdda_mipi_dsi0_pll:
191*a678adbfSDavid Heidelberg		vreg_l1a_0p875: ldo1 {
192*a678adbfSDavid Heidelberg			regulator-min-microvolt = <880000>;
193*a678adbfSDavid Heidelberg			regulator-max-microvolt = <880000>;
194*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
195*a678adbfSDavid Heidelberg			regulator-boot-on;
196*a678adbfSDavid Heidelberg		};
197*a678adbfSDavid Heidelberg
198*a678adbfSDavid Heidelberg		vreg_l5a_0p8: ldo5 {
199*a678adbfSDavid Heidelberg			regulator-min-microvolt = <800000>;
200*a678adbfSDavid Heidelberg			regulator-max-microvolt = <800000>;
201*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
202*a678adbfSDavid Heidelberg		};
203*a678adbfSDavid Heidelberg
204*a678adbfSDavid Heidelberg		vreg_l12a_1p8: ldo12 {
205*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1800000>;
206*a678adbfSDavid Heidelberg			regulator-max-microvolt = <1800000>;
207*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
208*a678adbfSDavid Heidelberg		};
209*a678adbfSDavid Heidelberg
210*a678adbfSDavid Heidelberg		vreg_l7a_1p8: ldo7 {
211*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1800000>;
212*a678adbfSDavid Heidelberg			regulator-max-microvolt = <1800000>;
213*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
214*a678adbfSDavid Heidelberg		};
215*a678adbfSDavid Heidelberg
216*a678adbfSDavid Heidelberg		vreg_l13a_2p95: ldo13 {
217*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1800000>;
218*a678adbfSDavid Heidelberg			regulator-max-microvolt = <2960000>;
219*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
220*a678adbfSDavid Heidelberg		};
221*a678adbfSDavid Heidelberg
222*a678adbfSDavid Heidelberg		vreg_l14a_1p8: ldo14 {
223*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1800000>;
224*a678adbfSDavid Heidelberg			regulator-max-microvolt = <1800000>;
225*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
226*a678adbfSDavid Heidelberg			regulator-boot-on;
227*a678adbfSDavid Heidelberg			/*
228*a678adbfSDavid Heidelberg			 * We can't properly bring the panel back if it gets turned off
229*a678adbfSDavid Heidelberg			 * so keep it's regulators always on for now.
230*a678adbfSDavid Heidelberg			 */
231*a678adbfSDavid Heidelberg			regulator-always-on;
232*a678adbfSDavid Heidelberg		};
233*a678adbfSDavid Heidelberg
234*a678adbfSDavid Heidelberg		vreg_l17a_1p3: ldo17 {
235*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1304000>;
236*a678adbfSDavid Heidelberg			regulator-max-microvolt = <1304000>;
237*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
238*a678adbfSDavid Heidelberg		};
239*a678adbfSDavid Heidelberg
240*a678adbfSDavid Heidelberg		vreg_l19a_3p3: ldo19 {
241*a678adbfSDavid Heidelberg			regulator-min-microvolt = <3300000>;
242*a678adbfSDavid Heidelberg			regulator-max-microvolt = <3312000>;
243*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
244*a678adbfSDavid Heidelberg			/*
245*a678adbfSDavid Heidelberg			 * The touchscreen needs this to be 3.3v, which is apparently
246*a678adbfSDavid Heidelberg			 * quite close to the hardware limit for this LDO (3.312v)
247*a678adbfSDavid Heidelberg			 * It must be kept in high power mode to prevent TS brownouts
248*a678adbfSDavid Heidelberg			 */
249*a678adbfSDavid Heidelberg			regulator-allowed-modes = <RPMH_REGULATOR_MODE_HPM>;
250*a678adbfSDavid Heidelberg		};
251*a678adbfSDavid Heidelberg
252*a678adbfSDavid Heidelberg		vreg_l20a_2p95: ldo20 {
253*a678adbfSDavid Heidelberg			regulator-min-microvolt = <2960000>;
254*a678adbfSDavid Heidelberg			regulator-max-microvolt = <2968000>;
255*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
256*a678adbfSDavid Heidelberg		};
257*a678adbfSDavid Heidelberg
258*a678adbfSDavid Heidelberg		vreg_l21a_2p95: ldo21 {
259*a678adbfSDavid Heidelberg			regulator-min-microvolt = <2960000>;
260*a678adbfSDavid Heidelberg			regulator-max-microvolt = <2968000>;
261*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
262*a678adbfSDavid Heidelberg		};
263*a678adbfSDavid Heidelberg
264*a678adbfSDavid Heidelberg		vreg_l24a_3p075: ldo24 {
265*a678adbfSDavid Heidelberg			regulator-min-microvolt = <3088000>;
266*a678adbfSDavid Heidelberg			regulator-max-microvolt = <3088000>;
267*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
268*a678adbfSDavid Heidelberg		};
269*a678adbfSDavid Heidelberg
270*a678adbfSDavid Heidelberg		vreg_l25a_3p3: ldo25 {
271*a678adbfSDavid Heidelberg			regulator-min-microvolt = <3300000>;
272*a678adbfSDavid Heidelberg			regulator-max-microvolt = <3312000>;
273*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
274*a678adbfSDavid Heidelberg		};
275*a678adbfSDavid Heidelberg
276*a678adbfSDavid Heidelberg		vdda_mipi_dsi0_1p2:
277*a678adbfSDavid Heidelberg		vreg_l26a_1p2: ldo26 {
278*a678adbfSDavid Heidelberg			regulator-min-microvolt = <1200000>;
279*a678adbfSDavid Heidelberg			regulator-max-microvolt = <1200000>;
280*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
281*a678adbfSDavid Heidelberg			regulator-boot-on;
282*a678adbfSDavid Heidelberg		};
283*a678adbfSDavid Heidelberg
284*a678adbfSDavid Heidelberg		vreg_l28a_3p0: ldo28 {
285*a678adbfSDavid Heidelberg			regulator-min-microvolt = <2856000>;
286*a678adbfSDavid Heidelberg			regulator-max-microvolt = <3008000>;
287*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>;
288*a678adbfSDavid Heidelberg			regulator-boot-on;
289*a678adbfSDavid Heidelberg			/*
290*a678adbfSDavid Heidelberg			 * We can't properly bring the panel back if it gets turned off
291*a678adbfSDavid Heidelberg			 * so keep it's regulators always on for now.
292*a678adbfSDavid Heidelberg			 */
293*a678adbfSDavid Heidelberg			regulator-always-on;
294*a678adbfSDavid Heidelberg		};
295*a678adbfSDavid Heidelberg	};
296*a678adbfSDavid Heidelberg
297*a678adbfSDavid Heidelberg	regulators-1 {
298*a678adbfSDavid Heidelberg		compatible = "qcom,pmi8998-rpmh-regulators";
299*a678adbfSDavid Heidelberg		qcom,pmic-id = "b";
300*a678adbfSDavid Heidelberg
301*a678adbfSDavid Heidelberg		vdd-bob-supply = <&vph_pwr>;
302*a678adbfSDavid Heidelberg
303*a678adbfSDavid Heidelberg		vreg_bob: bob {
304*a678adbfSDavid Heidelberg			regulator-min-microvolt = <3312000>;
305*a678adbfSDavid Heidelberg			regulator-max-microvolt = <3600000>;
306*a678adbfSDavid Heidelberg			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
307*a678adbfSDavid Heidelberg			regulator-allow-bypass;
308*a678adbfSDavid Heidelberg		};
309*a678adbfSDavid Heidelberg	};
310*a678adbfSDavid Heidelberg
311*a678adbfSDavid Heidelberg	regulators-2 {
312*a678adbfSDavid Heidelberg		compatible = "qcom,pm8005-rpmh-regulators";
313*a678adbfSDavid Heidelberg		qcom,pmic-id = "c";
314*a678adbfSDavid Heidelberg
315*a678adbfSDavid Heidelberg		vdd-s1-supply = <&vph_pwr>;
316*a678adbfSDavid Heidelberg		vdd-s2-supply = <&vph_pwr>;
317*a678adbfSDavid Heidelberg		vdd-s3-supply = <&vph_pwr>;
318*a678adbfSDavid Heidelberg		vdd-s4-supply = <&vph_pwr>;
319*a678adbfSDavid Heidelberg
320*a678adbfSDavid Heidelberg		vreg_s3c_0p6: smps3 {
321*a678adbfSDavid Heidelberg			regulator-min-microvolt = <600000>;
322*a678adbfSDavid Heidelberg			regulator-max-microvolt = <600000>;
323*a678adbfSDavid Heidelberg		};
324*a678adbfSDavid Heidelberg	};
325*a678adbfSDavid Heidelberg};
326*a678adbfSDavid Heidelberg
327*a678adbfSDavid Heidelberg&cci {
328*a678adbfSDavid Heidelberg	status = "okay";
329*a678adbfSDavid Heidelberg};
330*a678adbfSDavid Heidelberg
331*a678adbfSDavid Heidelberg&cci_i2c1 {
332*a678adbfSDavid Heidelberg	/* actuator @0c */
333*a678adbfSDavid Heidelberg
334*a678adbfSDavid Heidelberg	/* front camera, imx355 @1a */
335*a678adbfSDavid Heidelberg
336*a678adbfSDavid Heidelberg	/* eeprom @50, at24 driver says 8K */
337*a678adbfSDavid Heidelberg};
338*a678adbfSDavid Heidelberg
339*a678adbfSDavid Heidelberg&cdsp_pas {
340*a678adbfSDavid Heidelberg	firmware-name = "qcom/sdm845/Google/blueline/cdsp.mbn";
341*a678adbfSDavid Heidelberg
342*a678adbfSDavid Heidelberg	status = "okay";
343*a678adbfSDavid Heidelberg};
344*a678adbfSDavid Heidelberg
345*a678adbfSDavid Heidelberg&gcc {
346*a678adbfSDavid Heidelberg	protected-clocks = <GCC_QSPI_CORE_CLK>,
347*a678adbfSDavid Heidelberg			   <GCC_QSPI_CORE_CLK_SRC>,
348*a678adbfSDavid Heidelberg			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>;
349*a678adbfSDavid Heidelberg};
350*a678adbfSDavid Heidelberg
351*a678adbfSDavid Heidelberg&gpi_dma0 {
352*a678adbfSDavid Heidelberg	status = "okay";
353*a678adbfSDavid Heidelberg};
354*a678adbfSDavid Heidelberg
355*a678adbfSDavid Heidelberg&gpi_dma1 {
356*a678adbfSDavid Heidelberg	status = "okay";
357*a678adbfSDavid Heidelberg};
358*a678adbfSDavid Heidelberg
359*a678adbfSDavid Heidelberg&gpu {
360*a678adbfSDavid Heidelberg	status = "okay";
361*a678adbfSDavid Heidelberg};
362*a678adbfSDavid Heidelberg
363*a678adbfSDavid Heidelberg&gpu_zap_shader {
364*a678adbfSDavid Heidelberg	firmware-name = "qcom/sdm845/Google/blueline/a630_zap.mbn";
365*a678adbfSDavid Heidelberg};
366*a678adbfSDavid Heidelberg
367*a678adbfSDavid Heidelberg&i2c12 {
368*a678adbfSDavid Heidelberg	/* Bottom spkr (right) CS35L36 @ 40 */
369*a678adbfSDavid Heidelberg
370*a678adbfSDavid Heidelberg	/* Top spkr (left) CS35L36 @ 41 */
371*a678adbfSDavid Heidelberg};
372*a678adbfSDavid Heidelberg
373*a678adbfSDavid Heidelberg&ipa {
374*a678adbfSDavid Heidelberg	firmware-name = "qcom/sdm845/Google/blueline/ipa_fws.mbn";
375*a678adbfSDavid Heidelberg	memory-region = <&ipa_fw_mem>;
376*a678adbfSDavid Heidelberg
377*a678adbfSDavid Heidelberg	status = "okay";
378*a678adbfSDavid Heidelberg};
379*a678adbfSDavid Heidelberg
380*a678adbfSDavid Heidelberg&mdss {
381*a678adbfSDavid Heidelberg	status = "okay";
382*a678adbfSDavid Heidelberg};
383*a678adbfSDavid Heidelberg
384*a678adbfSDavid Heidelberg&mss_pil {
385*a678adbfSDavid Heidelberg	firmware-name = "qcom/sdm845/Google/blueline/mba.mbn",
386*a678adbfSDavid Heidelberg			"qcom/sdm845/Google/blueline/modem.mbn";
387*a678adbfSDavid Heidelberg
388*a678adbfSDavid Heidelberg	status = "okay";
389*a678adbfSDavid Heidelberg};
390*a678adbfSDavid Heidelberg
391*a678adbfSDavid Heidelberg&pm8998_gpios {
392*a678adbfSDavid Heidelberg	volume_up_gpio: vol-up-active-state {
393*a678adbfSDavid Heidelberg		pins = "gpio6";
394*a678adbfSDavid Heidelberg		function = "normal";
395*a678adbfSDavid Heidelberg		input-enable;
396*a678adbfSDavid Heidelberg		bias-pull-up;
397*a678adbfSDavid Heidelberg		qcom,drive-strength = <0>;
398*a678adbfSDavid Heidelberg	};
399*a678adbfSDavid Heidelberg};
400*a678adbfSDavid Heidelberg
401*a678adbfSDavid Heidelberg&pm8998_resin {
402*a678adbfSDavid Heidelberg	linux,code = <KEY_VOLUMEDOWN>;
403*a678adbfSDavid Heidelberg
404*a678adbfSDavid Heidelberg	status = "okay";
405*a678adbfSDavid Heidelberg};
406*a678adbfSDavid Heidelberg
407*a678adbfSDavid Heidelberg&pmi8998_charger {
408*a678adbfSDavid Heidelberg	monitored-battery = <&battery>;
409*a678adbfSDavid Heidelberg
410*a678adbfSDavid Heidelberg	status = "okay";
411*a678adbfSDavid Heidelberg};
412*a678adbfSDavid Heidelberg
413*a678adbfSDavid Heidelberg&qupv3_id_0 {
414*a678adbfSDavid Heidelberg	status = "okay";
415*a678adbfSDavid Heidelberg};
416*a678adbfSDavid Heidelberg
417*a678adbfSDavid Heidelberg&qupv3_id_1 {
418*a678adbfSDavid Heidelberg	status = "okay";
419*a678adbfSDavid Heidelberg};
420*a678adbfSDavid Heidelberg
421*a678adbfSDavid Heidelberg&qup_uart9_rx {
422*a678adbfSDavid Heidelberg	drive-strength = <2>;
423*a678adbfSDavid Heidelberg	bias-pull-up;
424*a678adbfSDavid Heidelberg};
425*a678adbfSDavid Heidelberg
426*a678adbfSDavid Heidelberg&qup_uart9_tx {
427*a678adbfSDavid Heidelberg	drive-strength = <2>;
428*a678adbfSDavid Heidelberg	bias-disable;
429*a678adbfSDavid Heidelberg};
430*a678adbfSDavid Heidelberg
431*a678adbfSDavid Heidelberg&tlmm {
432*a678adbfSDavid Heidelberg	gpio-reserved-ranges = < 0 4>, /* SPI (Intel MNH Pixel Visual Core) */
433*a678adbfSDavid Heidelberg			       <81 4>; /* SPI (most likely Fingerprint Cards FPC1075) */
434*a678adbfSDavid Heidelberg
435*a678adbfSDavid Heidelberg	touchscreen_reset: ts-reset-state {
436*a678adbfSDavid Heidelberg		pins = "gpio99";
437*a678adbfSDavid Heidelberg		function = "gpio";
438*a678adbfSDavid Heidelberg		drive-strength = <8>;
439*a678adbfSDavid Heidelberg		bias-pull-up;
440*a678adbfSDavid Heidelberg	};
441*a678adbfSDavid Heidelberg
442*a678adbfSDavid Heidelberg	touchscreen_pins: ts-pins-gpio-state {
443*a678adbfSDavid Heidelberg		pins = "gpio125";
444*a678adbfSDavid Heidelberg		function = "gpio";
445*a678adbfSDavid Heidelberg		drive-strength = <2>;
446*a678adbfSDavid Heidelberg		bias-disable;
447*a678adbfSDavid Heidelberg	};
448*a678adbfSDavid Heidelberg
449*a678adbfSDavid Heidelberg	touchscreen_i2c_pins: qup-i2c2-gpio-state {
450*a678adbfSDavid Heidelberg		pins = "gpio27", "gpio28";
451*a678adbfSDavid Heidelberg		function = "gpio";
452*a678adbfSDavid Heidelberg		drive-strength = <2>;
453*a678adbfSDavid Heidelberg		bias-disable;
454*a678adbfSDavid Heidelberg	};
455*a678adbfSDavid Heidelberg};
456*a678adbfSDavid Heidelberg
457*a678adbfSDavid Heidelberg&uart6 {
458*a678adbfSDavid Heidelberg	pinctrl-0 = <&qup_uart6_4pin>;
459*a678adbfSDavid Heidelberg
460*a678adbfSDavid Heidelberg	status = "okay";
461*a678adbfSDavid Heidelberg
462*a678adbfSDavid Heidelberg	bluetooth {
463*a678adbfSDavid Heidelberg		compatible = "qcom,wcn3990-bt";
464*a678adbfSDavid Heidelberg
465*a678adbfSDavid Heidelberg		vddio-supply = <&vreg_s4a_1p8>;
466*a678adbfSDavid Heidelberg		vddxo-supply = <&vreg_l7a_1p8>;
467*a678adbfSDavid Heidelberg		vddrf-supply = <&vreg_l17a_1p3>;
468*a678adbfSDavid Heidelberg		vddch0-supply = <&vreg_l25a_3p3>;
469*a678adbfSDavid Heidelberg		max-speed = <3200000>;
470*a678adbfSDavid Heidelberg	};
471*a678adbfSDavid Heidelberg};
472*a678adbfSDavid Heidelberg
473*a678adbfSDavid Heidelberg&uart9 {
474*a678adbfSDavid Heidelberg	status = "okay";
475*a678adbfSDavid Heidelberg};
476*a678adbfSDavid Heidelberg
477*a678adbfSDavid Heidelberg&ufs_mem_hc {
478*a678adbfSDavid Heidelberg	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
479*a678adbfSDavid Heidelberg
480*a678adbfSDavid Heidelberg	vcc-supply = <&vreg_l20a_2p95>;
481*a678adbfSDavid Heidelberg	vcc-max-microamp = <800000>;
482*a678adbfSDavid Heidelberg
483*a678adbfSDavid Heidelberg	status = "okay";
484*a678adbfSDavid Heidelberg};
485*a678adbfSDavid Heidelberg
486*a678adbfSDavid Heidelberg&ufs_mem_phy {
487*a678adbfSDavid Heidelberg	vdda-phy-supply = <&vreg_l1a_0p875>;
488*a678adbfSDavid Heidelberg	vdda-pll-supply = <&vreg_l26a_1p2>;
489*a678adbfSDavid Heidelberg
490*a678adbfSDavid Heidelberg	status = "okay";
491*a678adbfSDavid Heidelberg};
492*a678adbfSDavid Heidelberg
493*a678adbfSDavid Heidelberg&usb_1 {
494*a678adbfSDavid Heidelberg	status = "okay";
495*a678adbfSDavid Heidelberg};
496*a678adbfSDavid Heidelberg
497*a678adbfSDavid Heidelberg&usb_1_dwc3 {
498*a678adbfSDavid Heidelberg	dr_mode = "peripheral";
499*a678adbfSDavid Heidelberg};
500*a678adbfSDavid Heidelberg
501*a678adbfSDavid Heidelberg&usb_1_hsphy {
502*a678adbfSDavid Heidelberg	vdd-supply = <&vreg_l1a_0p875>;
503*a678adbfSDavid Heidelberg	vdda-pll-supply = <&vreg_l12a_1p8>;
504*a678adbfSDavid Heidelberg	vdda-phy-dpdm-supply = <&vreg_l24a_3p075>;
505*a678adbfSDavid Heidelberg
506*a678adbfSDavid Heidelberg	qcom,imp-res-offset-value = <8>;
507*a678adbfSDavid Heidelberg	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
508*a678adbfSDavid Heidelberg	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
509*a678adbfSDavid Heidelberg	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
510*a678adbfSDavid Heidelberg
511*a678adbfSDavid Heidelberg	status = "okay";
512*a678adbfSDavid Heidelberg};
513*a678adbfSDavid Heidelberg
514*a678adbfSDavid Heidelberg&usb_1_qmpphy {
515*a678adbfSDavid Heidelberg	vdda-phy-supply = <&vreg_l26a_1p2>;
516*a678adbfSDavid Heidelberg	vdda-pll-supply = <&vreg_l1a_0p875>;
517*a678adbfSDavid Heidelberg
518*a678adbfSDavid Heidelberg	status = "okay";
519*a678adbfSDavid Heidelberg};
520*a678adbfSDavid Heidelberg
521*a678adbfSDavid Heidelberg&venus {
522*a678adbfSDavid Heidelberg	firmware-name = "qcom/sdm845/Google/blueline/venus.mbn";
523*a678adbfSDavid Heidelberg
524*a678adbfSDavid Heidelberg	status = "okay";
525*a678adbfSDavid Heidelberg};
526*a678adbfSDavid Heidelberg
527*a678adbfSDavid Heidelberg&wifi {
528*a678adbfSDavid Heidelberg	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
529*a678adbfSDavid Heidelberg	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
530*a678adbfSDavid Heidelberg	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
531*a678adbfSDavid Heidelberg	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
532*a678adbfSDavid Heidelberg
533*a678adbfSDavid Heidelberg	qcom,snoc-host-cap-8bit-quirk;
534*a678adbfSDavid Heidelberg
535*a678adbfSDavid Heidelberg	status = "okay";
536*a678adbfSDavid Heidelberg};
537