xref: /freebsd-src/sys/contrib/device-tree/src/arm64/qcom/sc7280-herobrine-herobrine-r0.dts (revision c9ccf3a32da427475985b85d7df023ccfb138c27)
1*c9ccf3a3SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*c9ccf3a3SEmmanuel Vadot/*
3*c9ccf3a3SEmmanuel Vadot * Google Herobrine board device tree source
4*c9ccf3a3SEmmanuel Vadot *
5*c9ccf3a3SEmmanuel Vadot * Copyright 2021 Google LLC.
6*c9ccf3a3SEmmanuel Vadot */
7*c9ccf3a3SEmmanuel Vadot
8*c9ccf3a3SEmmanuel Vadot/dts-v1/;
9*c9ccf3a3SEmmanuel Vadot
10*c9ccf3a3SEmmanuel Vadot#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
11*c9ccf3a3SEmmanuel Vadot#include <dt-bindings/iio/qcom,spmi-adc7-pmr735a.h>
12*c9ccf3a3SEmmanuel Vadot#include <dt-bindings/input/gpio-keys.h>
13*c9ccf3a3SEmmanuel Vadot#include <dt-bindings/input/input.h>
14*c9ccf3a3SEmmanuel Vadot#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
15*c9ccf3a3SEmmanuel Vadot#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
16*c9ccf3a3SEmmanuel Vadot
17*c9ccf3a3SEmmanuel Vadot#include "sc7280.dtsi"
18*c9ccf3a3SEmmanuel Vadot
19*c9ccf3a3SEmmanuel Vadot/* PMICs depend on spmi_bus label and so must come after SoC */
20*c9ccf3a3SEmmanuel Vadot#include "pm7325.dtsi"
21*c9ccf3a3SEmmanuel Vadot#include "pm8350c.dtsi"
22*c9ccf3a3SEmmanuel Vadot#include "pmk8350.dtsi"
23*c9ccf3a3SEmmanuel Vadot
24*c9ccf3a3SEmmanuel Vadot#include "sc7280-chrome-common.dtsi"
25*c9ccf3a3SEmmanuel Vadot
26*c9ccf3a3SEmmanuel Vadot/ {
27*c9ccf3a3SEmmanuel Vadot	model = "Google Herobrine (rev0)";
28*c9ccf3a3SEmmanuel Vadot	compatible = "google,herobrine-rev0", "qcom,sc7280";
29*c9ccf3a3SEmmanuel Vadot};
30*c9ccf3a3SEmmanuel Vadot
31*c9ccf3a3SEmmanuel Vadot/ {
32*c9ccf3a3SEmmanuel Vadot	aliases {
33*c9ccf3a3SEmmanuel Vadot		serial0 = &uart5;
34*c9ccf3a3SEmmanuel Vadot		serial1 = &uart7;
35*c9ccf3a3SEmmanuel Vadot	};
36*c9ccf3a3SEmmanuel Vadot
37*c9ccf3a3SEmmanuel Vadot	chosen {
38*c9ccf3a3SEmmanuel Vadot		stdout-path = "serial0:115200n8";
39*c9ccf3a3SEmmanuel Vadot	};
40*c9ccf3a3SEmmanuel Vadot
41*c9ccf3a3SEmmanuel Vadot	/* FIXED REGULATORS - parents above children */
42*c9ccf3a3SEmmanuel Vadot
43*c9ccf3a3SEmmanuel Vadot	/* This is the top level supply and variable voltage */
44*c9ccf3a3SEmmanuel Vadot	ppvar_sys: ppvar-sys-regulator {
45*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
46*c9ccf3a3SEmmanuel Vadot		regulator-name = "ppvar_sys";
47*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
48*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
49*c9ccf3a3SEmmanuel Vadot	};
50*c9ccf3a3SEmmanuel Vadot
51*c9ccf3a3SEmmanuel Vadot	/* This divides ppvar_sys by 2, so voltage is variable */
52*c9ccf3a3SEmmanuel Vadot	src_vph_pwr: src-vph-pwr-regulator {
53*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
54*c9ccf3a3SEmmanuel Vadot		regulator-name = "src_vph_pwr";
55*c9ccf3a3SEmmanuel Vadot
56*c9ccf3a3SEmmanuel Vadot		/* EC turns on with switchcap_on; always on for AP */
57*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
58*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
59*c9ccf3a3SEmmanuel Vadot
60*c9ccf3a3SEmmanuel Vadot		vin-supply = <&ppvar_sys>;
61*c9ccf3a3SEmmanuel Vadot	};
62*c9ccf3a3SEmmanuel Vadot
63*c9ccf3a3SEmmanuel Vadot	pp5000_s3: pp5000-s3-regulator {
64*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
65*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp5000_s3";
66*c9ccf3a3SEmmanuel Vadot
67*c9ccf3a3SEmmanuel Vadot		/* EC turns on with en_pp5000_s3; always on for AP */
68*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
69*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
70*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
71*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
72*c9ccf3a3SEmmanuel Vadot
73*c9ccf3a3SEmmanuel Vadot		vin-supply = <&ppvar_sys>;
74*c9ccf3a3SEmmanuel Vadot	};
75*c9ccf3a3SEmmanuel Vadot
76*c9ccf3a3SEmmanuel Vadot	pp3300_z1: pp3300-z1-regulator {
77*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
78*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp3300_z1";
79*c9ccf3a3SEmmanuel Vadot
80*c9ccf3a3SEmmanuel Vadot		/* EC turns on with en_pp3300_z1; always on for AP */
81*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
82*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
83*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
84*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
85*c9ccf3a3SEmmanuel Vadot
86*c9ccf3a3SEmmanuel Vadot		vin-supply = <&ppvar_sys>;
87*c9ccf3a3SEmmanuel Vadot	};
88*c9ccf3a3SEmmanuel Vadot
89*c9ccf3a3SEmmanuel Vadot	pp3300_audio:
90*c9ccf3a3SEmmanuel Vadot	pp3300_codec: pp3300-codec-regulator {
91*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
92*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp3300_codec";
93*c9ccf3a3SEmmanuel Vadot
94*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
95*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
96*c9ccf3a3SEmmanuel Vadot
97*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
98*c9ccf3a3SEmmanuel Vadot		enable-active-high;
99*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
100*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&en_pp3300_codec>;
101*c9ccf3a3SEmmanuel Vadot
102*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_z1>;
103*c9ccf3a3SEmmanuel Vadot	};
104*c9ccf3a3SEmmanuel Vadot
105*c9ccf3a3SEmmanuel Vadot	pp3300_cam:
106*c9ccf3a3SEmmanuel Vadot	pp3300_edp:
107*c9ccf3a3SEmmanuel Vadot	pp3300_ts: pp3300-edp-regulator {
108*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
109*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp3300_edp";
110*c9ccf3a3SEmmanuel Vadot
111*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
112*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
113*c9ccf3a3SEmmanuel Vadot
114*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 80 GPIO_ACTIVE_HIGH>;
115*c9ccf3a3SEmmanuel Vadot		enable-active-high;
116*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
117*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&en_pp3300_dx_edp>;
118*c9ccf3a3SEmmanuel Vadot
119*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_z1>;
120*c9ccf3a3SEmmanuel Vadot	};
121*c9ccf3a3SEmmanuel Vadot
122*c9ccf3a3SEmmanuel Vadot	pp3300_fp:
123*c9ccf3a3SEmmanuel Vadot	pp3300_fp_ls:
124*c9ccf3a3SEmmanuel Vadot	pp3300_mcu: pp3300-fp-regulator {
125*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
126*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp3300_fp";
127*c9ccf3a3SEmmanuel Vadot
128*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
129*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
130*c9ccf3a3SEmmanuel Vadot
131*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
132*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
133*c9ccf3a3SEmmanuel Vadot
134*c9ccf3a3SEmmanuel Vadot		/*
135*c9ccf3a3SEmmanuel Vadot		 * WARNING: it is intentional that GPIO 42 isn't listed here.
136*c9ccf3a3SEmmanuel Vadot		 * The userspace script for updating the fingerprint firmware
137*c9ccf3a3SEmmanuel Vadot		 * needs to control the FP regulators during a FW update,
138*c9ccf3a3SEmmanuel Vadot		 * hence the signal can't be owned by the kernel regulator.
139*c9ccf3a3SEmmanuel Vadot		 */
140*c9ccf3a3SEmmanuel Vadot
141*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
142*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&en_fp_rails>;
143*c9ccf3a3SEmmanuel Vadot
144*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_z1>;
145*c9ccf3a3SEmmanuel Vadot	};
146*c9ccf3a3SEmmanuel Vadot
147*c9ccf3a3SEmmanuel Vadot	pp3300_hub: pp3300-hub-regulator {
148*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
149*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp3300_hub";
150*c9ccf3a3SEmmanuel Vadot
151*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
152*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
153*c9ccf3a3SEmmanuel Vadot
154*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
155*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
156*c9ccf3a3SEmmanuel Vadot
157*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 24 GPIO_ACTIVE_HIGH>;
158*c9ccf3a3SEmmanuel Vadot		enable-active-high;
159*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
160*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&en_pp3300_hub>;
161*c9ccf3a3SEmmanuel Vadot
162*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_z1>;
163*c9ccf3a3SEmmanuel Vadot	};
164*c9ccf3a3SEmmanuel Vadot
165*c9ccf3a3SEmmanuel Vadot	pp3300_tp: pp3300-tp-regulator {
166*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
167*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp3300_tp";
168*c9ccf3a3SEmmanuel Vadot
169*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
170*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
171*c9ccf3a3SEmmanuel Vadot
172*c9ccf3a3SEmmanuel Vadot		/* AP turns on with PP1800_L18B_S0; always on for AP */
173*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
174*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
175*c9ccf3a3SEmmanuel Vadot
176*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_z1>;
177*c9ccf3a3SEmmanuel Vadot	};
178*c9ccf3a3SEmmanuel Vadot
179*c9ccf3a3SEmmanuel Vadot	pp2850_uf_cam: pp2850-uf-cam-regulator {
180*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
181*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp2850_uf_cam";
182*c9ccf3a3SEmmanuel Vadot
183*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <2850000>;
184*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <2850000>;
185*c9ccf3a3SEmmanuel Vadot
186*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 6 GPIO_ACTIVE_HIGH>;
187*c9ccf3a3SEmmanuel Vadot		enable-active-high;
188*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
189*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&uf_cam_en>;
190*c9ccf3a3SEmmanuel Vadot
191*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_cam>;
192*c9ccf3a3SEmmanuel Vadot	};
193*c9ccf3a3SEmmanuel Vadot
194*c9ccf3a3SEmmanuel Vadot	pp2850_vcm_wf_cam: pp2850-vcm-wf-cam-regulator {
195*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
196*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp2850_vcm_wf_cam";
197*c9ccf3a3SEmmanuel Vadot
198*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <2850000>;
199*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <2850000>;
200*c9ccf3a3SEmmanuel Vadot
201*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>;
202*c9ccf3a3SEmmanuel Vadot		enable-active-high;
203*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
204*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&wf_cam_en>;
205*c9ccf3a3SEmmanuel Vadot
206*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_cam>;
207*c9ccf3a3SEmmanuel Vadot	};
208*c9ccf3a3SEmmanuel Vadot
209*c9ccf3a3SEmmanuel Vadot	pp2850_wf_cam: pp2850-wf-cam-regulator {
210*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
211*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp2850_wf_cam";
212*c9ccf3a3SEmmanuel Vadot
213*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <2850000>;
214*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <2850000>;
215*c9ccf3a3SEmmanuel Vadot
216*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>;
217*c9ccf3a3SEmmanuel Vadot		enable-active-high;
218*c9ccf3a3SEmmanuel Vadot		/*
219*c9ccf3a3SEmmanuel Vadot		 * The pinconf can only be referenced once so we put it on the
220*c9ccf3a3SEmmanuel Vadot		 * first regulator and comment it out here.
221*c9ccf3a3SEmmanuel Vadot		 *
222*c9ccf3a3SEmmanuel Vadot		 * pinctrl-names = "default";
223*c9ccf3a3SEmmanuel Vadot		 * pinctrl-0 = <&wf_cam_en>;
224*c9ccf3a3SEmmanuel Vadot		 */
225*c9ccf3a3SEmmanuel Vadot
226*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp3300_cam>;
227*c9ccf3a3SEmmanuel Vadot	};
228*c9ccf3a3SEmmanuel Vadot
229*c9ccf3a3SEmmanuel Vadot	pp1800_fp: pp1800-fp-regulator {
230*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
231*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp1800_fp";
232*c9ccf3a3SEmmanuel Vadot
233*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
234*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <1800000>;
235*c9ccf3a3SEmmanuel Vadot
236*c9ccf3a3SEmmanuel Vadot		regulator-boot-on;
237*c9ccf3a3SEmmanuel Vadot		regulator-always-on;
238*c9ccf3a3SEmmanuel Vadot
239*c9ccf3a3SEmmanuel Vadot		/*
240*c9ccf3a3SEmmanuel Vadot		 * WARNING: it is intentional that GPIO 42 isn't listed here.
241*c9ccf3a3SEmmanuel Vadot		 * The userspace script for updating the fingerprint firmware
242*c9ccf3a3SEmmanuel Vadot		 * needs to control the FP regulators during a FW update,
243*c9ccf3a3SEmmanuel Vadot		 * hence the signal can't be owned by the kernel regulator.
244*c9ccf3a3SEmmanuel Vadot		 */
245*c9ccf3a3SEmmanuel Vadot
246*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
247*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&en_fp_rails>;
248*c9ccf3a3SEmmanuel Vadot
249*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp1800_l18b_s0>;
250*c9ccf3a3SEmmanuel Vadot		status = "disabled";
251*c9ccf3a3SEmmanuel Vadot	};
252*c9ccf3a3SEmmanuel Vadot
253*c9ccf3a3SEmmanuel Vadot	pp1800_uf_cam: pp1800-uf-cam-regulator {
254*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
255*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp1800_uf_cam";
256*c9ccf3a3SEmmanuel Vadot
257*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
258*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <1800000>;
259*c9ccf3a3SEmmanuel Vadot
260*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 6 GPIO_ACTIVE_HIGH>;
261*c9ccf3a3SEmmanuel Vadot		enable-active-high;
262*c9ccf3a3SEmmanuel Vadot		/*
263*c9ccf3a3SEmmanuel Vadot		 * The pinconf can only be referenced once so we put it on the
264*c9ccf3a3SEmmanuel Vadot		 * first regulator and comment it out here.
265*c9ccf3a3SEmmanuel Vadot		 *
266*c9ccf3a3SEmmanuel Vadot		 * pinctrl-names = "default";
267*c9ccf3a3SEmmanuel Vadot		 * pinctrl-0 = <&uf_cam_en>;
268*c9ccf3a3SEmmanuel Vadot		 */
269*c9ccf3a3SEmmanuel Vadot
270*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp1800_l19b>;
271*c9ccf3a3SEmmanuel Vadot	};
272*c9ccf3a3SEmmanuel Vadot
273*c9ccf3a3SEmmanuel Vadot	pp1800_wf_cam: pp1800-wf-cam-regulator {
274*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
275*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp1800_wf_cam";
276*c9ccf3a3SEmmanuel Vadot
277*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
278*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <1800000>;
279*c9ccf3a3SEmmanuel Vadot
280*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>;
281*c9ccf3a3SEmmanuel Vadot		enable-active-high;
282*c9ccf3a3SEmmanuel Vadot		/*
283*c9ccf3a3SEmmanuel Vadot		 * The pinconf can only be referenced once so we put it on the
284*c9ccf3a3SEmmanuel Vadot		 * first regulator and comment it out here.
285*c9ccf3a3SEmmanuel Vadot		 *
286*c9ccf3a3SEmmanuel Vadot		 * pinctrl-names = "default";
287*c9ccf3a3SEmmanuel Vadot		 * pinctrl-0 = <&wf_cam_en>;
288*c9ccf3a3SEmmanuel Vadot		 */
289*c9ccf3a3SEmmanuel Vadot
290*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp1800_l19b>;
291*c9ccf3a3SEmmanuel Vadot	};
292*c9ccf3a3SEmmanuel Vadot
293*c9ccf3a3SEmmanuel Vadot	pp1200_wf_cam: pp1200-wf-cam-regulator {
294*c9ccf3a3SEmmanuel Vadot		compatible = "regulator-fixed";
295*c9ccf3a3SEmmanuel Vadot		regulator-name = "pp1200_wf_cam";
296*c9ccf3a3SEmmanuel Vadot
297*c9ccf3a3SEmmanuel Vadot		regulator-min-microvolt = <1200000>;
298*c9ccf3a3SEmmanuel Vadot		regulator-max-microvolt = <1200000>;
299*c9ccf3a3SEmmanuel Vadot
300*c9ccf3a3SEmmanuel Vadot		gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>;
301*c9ccf3a3SEmmanuel Vadot		enable-active-high;
302*c9ccf3a3SEmmanuel Vadot		/*
303*c9ccf3a3SEmmanuel Vadot		 * The pinconf can only be referenced once so we put it on the
304*c9ccf3a3SEmmanuel Vadot		 * first regulator and comment it out here.
305*c9ccf3a3SEmmanuel Vadot		 *
306*c9ccf3a3SEmmanuel Vadot		 * pinctrl-names = "default";
307*c9ccf3a3SEmmanuel Vadot		 * pinctrl-0 = <&wf_cam_en>;
308*c9ccf3a3SEmmanuel Vadot		 */
309*c9ccf3a3SEmmanuel Vadot
310*c9ccf3a3SEmmanuel Vadot		vin-supply = <&pp1200_l6b>;
311*c9ccf3a3SEmmanuel Vadot	};
312*c9ccf3a3SEmmanuel Vadot
313*c9ccf3a3SEmmanuel Vadot	/* BOARD-SPECIFIC TOP LEVEL NODES */
314*c9ccf3a3SEmmanuel Vadot
315*c9ccf3a3SEmmanuel Vadot	gpio_keys: gpio-keys {
316*c9ccf3a3SEmmanuel Vadot		compatible = "gpio-keys";
317*c9ccf3a3SEmmanuel Vadot		status = "disabled";
318*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
319*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&pen_pdct_l>;
320*c9ccf3a3SEmmanuel Vadot
321*c9ccf3a3SEmmanuel Vadot		pen_insert: pen-insert {
322*c9ccf3a3SEmmanuel Vadot			label = "Pen Insert";
323*c9ccf3a3SEmmanuel Vadot
324*c9ccf3a3SEmmanuel Vadot			/* Insert = low, eject = high */
325*c9ccf3a3SEmmanuel Vadot			gpios = <&tlmm 39 GPIO_ACTIVE_LOW>;
326*c9ccf3a3SEmmanuel Vadot			linux,code = <SW_PEN_INSERTED>;
327*c9ccf3a3SEmmanuel Vadot			linux,input-type = <EV_SW>;
328*c9ccf3a3SEmmanuel Vadot			wakeup-event-action = <EV_ACT_DEASSERTED>;
329*c9ccf3a3SEmmanuel Vadot			wakeup-source;
330*c9ccf3a3SEmmanuel Vadot		};
331*c9ccf3a3SEmmanuel Vadot	};
332*c9ccf3a3SEmmanuel Vadot
333*c9ccf3a3SEmmanuel Vadot	pwmleds {
334*c9ccf3a3SEmmanuel Vadot		compatible = "pwm-leds";
335*c9ccf3a3SEmmanuel Vadot		status = "disabled";
336*c9ccf3a3SEmmanuel Vadot		keyboard_backlight: keyboard-backlight {
337*c9ccf3a3SEmmanuel Vadot			status = "disabled";
338*c9ccf3a3SEmmanuel Vadot			label = "cros_ec::kbd_backlight";
339*c9ccf3a3SEmmanuel Vadot			pwms = <&cros_ec_pwm 0>;
340*c9ccf3a3SEmmanuel Vadot			max-brightness = <1023>;
341*c9ccf3a3SEmmanuel Vadot		};
342*c9ccf3a3SEmmanuel Vadot	};
343*c9ccf3a3SEmmanuel Vadot};
344*c9ccf3a3SEmmanuel Vadot
345*c9ccf3a3SEmmanuel Vadot&apps_rsc {
346*c9ccf3a3SEmmanuel Vadot	pm7325-regulators {
347*c9ccf3a3SEmmanuel Vadot		compatible = "qcom,pm7325-rpmh-regulators";
348*c9ccf3a3SEmmanuel Vadot		qcom,pmic-id = "b";
349*c9ccf3a3SEmmanuel Vadot
350*c9ccf3a3SEmmanuel Vadot		vdd19_pmu_pcie_i:
351*c9ccf3a3SEmmanuel Vadot		vdd19_pmu_rfa_i:
352*c9ccf3a3SEmmanuel Vadot		vreg_s1b_wlan:
353*c9ccf3a3SEmmanuel Vadot		vreg_s1b: smps1 {
354*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1856000>;
355*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2040000>;
356*c9ccf3a3SEmmanuel Vadot		};
357*c9ccf3a3SEmmanuel Vadot
358*c9ccf3a3SEmmanuel Vadot		vdd_pmu_aon_i:
359*c9ccf3a3SEmmanuel Vadot		vreg_s7b_wlan:
360*c9ccf3a3SEmmanuel Vadot		vreg_s7b: smps7 {
361*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <535000>;
362*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1120000>;
363*c9ccf3a3SEmmanuel Vadot		};
364*c9ccf3a3SEmmanuel Vadot
365*c9ccf3a3SEmmanuel Vadot		vdd13_pmu_pcie_i:
366*c9ccf3a3SEmmanuel Vadot		vdd13_pmu_rfa_i:
367*c9ccf3a3SEmmanuel Vadot		vreg_s8b_wlan:
368*c9ccf3a3SEmmanuel Vadot		vreg_s8b: smps8 {
369*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1256000>;
370*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1500000>;
371*c9ccf3a3SEmmanuel Vadot		};
372*c9ccf3a3SEmmanuel Vadot
373*c9ccf3a3SEmmanuel Vadot		vdda_usb_ss_dp_core:
374*c9ccf3a3SEmmanuel Vadot		vreg_l1b: ldo1 {
375*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <825000>;
376*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <925000>;
377*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
378*c9ccf3a3SEmmanuel Vadot		};
379*c9ccf3a3SEmmanuel Vadot
380*c9ccf3a3SEmmanuel Vadot		vdda_usb_hs0_3p1:
381*c9ccf3a3SEmmanuel Vadot		vreg_l2b: ldo2 {
382*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <2700000>;
383*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3544000>;
384*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
385*c9ccf3a3SEmmanuel Vadot		};
386*c9ccf3a3SEmmanuel Vadot
387*c9ccf3a3SEmmanuel Vadot		pp1200_l6b:
388*c9ccf3a3SEmmanuel Vadot		vdd_ufs_1p2:
389*c9ccf3a3SEmmanuel Vadot		vdd_vref:
390*c9ccf3a3SEmmanuel Vadot		vdda_csi01_1p2:
391*c9ccf3a3SEmmanuel Vadot		vdda_csi23_1p2:
392*c9ccf3a3SEmmanuel Vadot		vdda_csi4_1p2:
393*c9ccf3a3SEmmanuel Vadot		vdda_dsi0_1p2:
394*c9ccf3a3SEmmanuel Vadot		vdda_pcie0_1p2:
395*c9ccf3a3SEmmanuel Vadot		vdda_pcie1_1p2:
396*c9ccf3a3SEmmanuel Vadot		vdda_usb_ss_dp_1p2:
397*c9ccf3a3SEmmanuel Vadot		vdda_qlink0_1p2_ck:
398*c9ccf3a3SEmmanuel Vadot		vdda_qlink1_1p2_ck:
399*c9ccf3a3SEmmanuel Vadot		vreg_l6b_1p2:
400*c9ccf3a3SEmmanuel Vadot		vreg_l6b: ldo6 {
401*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1120000>;
402*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1408000>;
403*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
404*c9ccf3a3SEmmanuel Vadot		};
405*c9ccf3a3SEmmanuel Vadot
406*c9ccf3a3SEmmanuel Vadot		pp2950_l7b:
407*c9ccf3a3SEmmanuel Vadot		vreg_l7b: ldo7 {
408*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <2960000>;
409*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2960000>;
410*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
411*c9ccf3a3SEmmanuel Vadot		};
412*c9ccf3a3SEmmanuel Vadot
413*c9ccf3a3SEmmanuel Vadot		codec_vcc:
414*c9ccf3a3SEmmanuel Vadot		pp1800_l18b_s0:
415*c9ccf3a3SEmmanuel Vadot		pp1800_ts:
416*c9ccf3a3SEmmanuel Vadot		vdd1:
417*c9ccf3a3SEmmanuel Vadot		vddpx_0:
418*c9ccf3a3SEmmanuel Vadot		vddpx_3:
419*c9ccf3a3SEmmanuel Vadot		vddpx_7:
420*c9ccf3a3SEmmanuel Vadot		vreg_l18b: ldo18 {
421*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
422*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2000000>;
423*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
424*c9ccf3a3SEmmanuel Vadot		};
425*c9ccf3a3SEmmanuel Vadot
426*c9ccf3a3SEmmanuel Vadot		pp1800_l19b:
427*c9ccf3a3SEmmanuel Vadot		vddpx_ts:
428*c9ccf3a3SEmmanuel Vadot		vddpx_wl4otp:
429*c9ccf3a3SEmmanuel Vadot		vreg_l19b: ldo19 {
430*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
431*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
432*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
433*c9ccf3a3SEmmanuel Vadot		};
434*c9ccf3a3SEmmanuel Vadot	};
435*c9ccf3a3SEmmanuel Vadot
436*c9ccf3a3SEmmanuel Vadot	pm8350c-regulators {
437*c9ccf3a3SEmmanuel Vadot		compatible = "qcom,pm8350c-rpmh-regulators";
438*c9ccf3a3SEmmanuel Vadot		qcom,pmic-id = "c";
439*c9ccf3a3SEmmanuel Vadot
440*c9ccf3a3SEmmanuel Vadot		vreg_s1c: smps1 {
441*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <2190000>;
442*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2210000>;
443*c9ccf3a3SEmmanuel Vadot		};
444*c9ccf3a3SEmmanuel Vadot
445*c9ccf3a3SEmmanuel Vadot		vddpx_1:
446*c9ccf3a3SEmmanuel Vadot		vreg_s9c: smps9 {
447*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1010000>;
448*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1170000>;
449*c9ccf3a3SEmmanuel Vadot		};
450*c9ccf3a3SEmmanuel Vadot
451*c9ccf3a3SEmmanuel Vadot		pp1800_l1c:
452*c9ccf3a3SEmmanuel Vadot		pp1800_pen:
453*c9ccf3a3SEmmanuel Vadot		vdd_a_gfx_cs_1p1:
454*c9ccf3a3SEmmanuel Vadot		vdd_a_cxo_1p8:
455*c9ccf3a3SEmmanuel Vadot		vdd_qfprom:
456*c9ccf3a3SEmmanuel Vadot		vdda_apc_cs_1p8:
457*c9ccf3a3SEmmanuel Vadot		vdda_qrefs_1p8:
458*c9ccf3a3SEmmanuel Vadot		vdda_turing_q6_cs_1p8:
459*c9ccf3a3SEmmanuel Vadot		vdda_usb_hs0_1p8:
460*c9ccf3a3SEmmanuel Vadot		vreg_l1c: ldo1 {
461*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
462*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1980000>;
463*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
464*c9ccf3a3SEmmanuel Vadot		};
465*c9ccf3a3SEmmanuel Vadot
466*c9ccf3a3SEmmanuel Vadot		dmic_vdd:
467*c9ccf3a3SEmmanuel Vadot		pp1800_alc5682:
468*c9ccf3a3SEmmanuel Vadot		pp1800_l2c:
469*c9ccf3a3SEmmanuel Vadot		pp1800_vreg_alc5682:
470*c9ccf3a3SEmmanuel Vadot		vreg_l2c: ldo2 {
471*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1620000>;
472*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1980000>;
473*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
474*c9ccf3a3SEmmanuel Vadot		};
475*c9ccf3a3SEmmanuel Vadot
476*c9ccf3a3SEmmanuel Vadot		pp3300_sar:
477*c9ccf3a3SEmmanuel Vadot		pp3300_sensor:
478*c9ccf3a3SEmmanuel Vadot		vreg_l3c: ldo3 {
479*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <2800000>;
480*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3540000>;
481*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
482*c9ccf3a3SEmmanuel Vadot		};
483*c9ccf3a3SEmmanuel Vadot
484*c9ccf3a3SEmmanuel Vadot		ppvar_uim1:
485*c9ccf3a3SEmmanuel Vadot		vddpx_5:
486*c9ccf3a3SEmmanuel Vadot		vreg_l4c: ldo4 {
487*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1620000>;
488*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3300000>;
489*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
490*c9ccf3a3SEmmanuel Vadot		};
491*c9ccf3a3SEmmanuel Vadot
492*c9ccf3a3SEmmanuel Vadot		pp2950_l5c:
493*c9ccf3a3SEmmanuel Vadot		uim_vcc:
494*c9ccf3a3SEmmanuel Vadot		vddpx_6:
495*c9ccf3a3SEmmanuel Vadot		vreg_l5c: ldo5 {
496*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1620000>;
497*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3300000>;
498*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
499*c9ccf3a3SEmmanuel Vadot		};
500*c9ccf3a3SEmmanuel Vadot
501*c9ccf3a3SEmmanuel Vadot		ppvar_l6c:
502*c9ccf3a3SEmmanuel Vadot		vddpx_2:
503*c9ccf3a3SEmmanuel Vadot		vreg_l6c: ldo6 {
504*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
505*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2950000>;
506*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
507*c9ccf3a3SEmmanuel Vadot		};
508*c9ccf3a3SEmmanuel Vadot
509*c9ccf3a3SEmmanuel Vadot		vreg_l7c: ldo7 {
510*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <3000000>;
511*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3544000>;
512*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
513*c9ccf3a3SEmmanuel Vadot		};
514*c9ccf3a3SEmmanuel Vadot
515*c9ccf3a3SEmmanuel Vadot		pp1800_prox:
516*c9ccf3a3SEmmanuel Vadot		pp1800_sar:
517*c9ccf3a3SEmmanuel Vadot		vreg_l8c: ldo8 {
518*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1620000>;
519*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2000000>;
520*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
521*c9ccf3a3SEmmanuel Vadot		};
522*c9ccf3a3SEmmanuel Vadot
523*c9ccf3a3SEmmanuel Vadot		pp2950_l9c:
524*c9ccf3a3SEmmanuel Vadot		vreg_l9c: ldo9 {
525*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <2960000>;
526*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2960000>;
527*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
528*c9ccf3a3SEmmanuel Vadot		};
529*c9ccf3a3SEmmanuel Vadot
530*c9ccf3a3SEmmanuel Vadot		vdd_a_gnss_0p9:
531*c9ccf3a3SEmmanuel Vadot		vdd_ufs_core:
532*c9ccf3a3SEmmanuel Vadot		vdd_usb_hs0_core:
533*c9ccf3a3SEmmanuel Vadot		vdd_vref_0p9:
534*c9ccf3a3SEmmanuel Vadot		vdda_csi01_0p9:
535*c9ccf3a3SEmmanuel Vadot		vdda_csi23_0p9:
536*c9ccf3a3SEmmanuel Vadot		vdda_csi4_0p9:
537*c9ccf3a3SEmmanuel Vadot		vdda_dsi0_pll_0p9:
538*c9ccf3a3SEmmanuel Vadot		vdda_dsi0_0p9:
539*c9ccf3a3SEmmanuel Vadot		vdda_pcie0_core:
540*c9ccf3a3SEmmanuel Vadot		vdda_pcie1_core:
541*c9ccf3a3SEmmanuel Vadot		vdda_qlink0_0p9:
542*c9ccf3a3SEmmanuel Vadot		vdda_qlink1_0p9:
543*c9ccf3a3SEmmanuel Vadot		vdda_qlink0_0p9_ck:
544*c9ccf3a3SEmmanuel Vadot		vdda_qlink1_0p9_ck:
545*c9ccf3a3SEmmanuel Vadot		vdda_qrefs_0p875:
546*c9ccf3a3SEmmanuel Vadot		vreg_l10c_0p8:
547*c9ccf3a3SEmmanuel Vadot		vreg_l10c: ldo10 {
548*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <720000>;
549*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <1050000>;
550*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
551*c9ccf3a3SEmmanuel Vadot		};
552*c9ccf3a3SEmmanuel Vadot
553*c9ccf3a3SEmmanuel Vadot		pp2800_l11c:
554*c9ccf3a3SEmmanuel Vadot		vreg_l11c: ldo11 {
555*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <2800000>;
556*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3544000>;
557*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
558*c9ccf3a3SEmmanuel Vadot		};
559*c9ccf3a3SEmmanuel Vadot
560*c9ccf3a3SEmmanuel Vadot		pp1800_l12c:
561*c9ccf3a3SEmmanuel Vadot		vreg_l12c: ldo12 {
562*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <1650000>;
563*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <2000000>;
564*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
565*c9ccf3a3SEmmanuel Vadot		};
566*c9ccf3a3SEmmanuel Vadot
567*c9ccf3a3SEmmanuel Vadot		pp3300_l13c:
568*c9ccf3a3SEmmanuel Vadot		vreg_l13c: ldo13 {
569*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <2700000>;
570*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3544000>;
571*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
572*c9ccf3a3SEmmanuel Vadot		};
573*c9ccf3a3SEmmanuel Vadot
574*c9ccf3a3SEmmanuel Vadot		vreg_bob: bob {
575*c9ccf3a3SEmmanuel Vadot			regulator-min-microvolt = <3008000>;
576*c9ccf3a3SEmmanuel Vadot			regulator-max-microvolt = <3960000>;
577*c9ccf3a3SEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
578*c9ccf3a3SEmmanuel Vadot		};
579*c9ccf3a3SEmmanuel Vadot	};
580*c9ccf3a3SEmmanuel Vadot};
581*c9ccf3a3SEmmanuel Vadot
582*c9ccf3a3SEmmanuel Vadotap_tp_i2c: &i2c1 {
583*c9ccf3a3SEmmanuel Vadot	status = "okay";
584*c9ccf3a3SEmmanuel Vadot	clock-frequency = <400000>;
585*c9ccf3a3SEmmanuel Vadot
586*c9ccf3a3SEmmanuel Vadot	trackpad: trackpad@15 {
587*c9ccf3a3SEmmanuel Vadot		compatible = "elan,ekth3000";
588*c9ccf3a3SEmmanuel Vadot		reg = <0x15>;
589*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
590*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&tp_int_odl>;
591*c9ccf3a3SEmmanuel Vadot
592*c9ccf3a3SEmmanuel Vadot		interrupt-parent = <&tlmm>;
593*c9ccf3a3SEmmanuel Vadot		interrupts = <102 IRQ_TYPE_EDGE_FALLING>;
594*c9ccf3a3SEmmanuel Vadot
595*c9ccf3a3SEmmanuel Vadot		vcc-supply = <&pp3300_z1>;
596*c9ccf3a3SEmmanuel Vadot
597*c9ccf3a3SEmmanuel Vadot		wakeup-source;
598*c9ccf3a3SEmmanuel Vadot	};
599*c9ccf3a3SEmmanuel Vadot};
600*c9ccf3a3SEmmanuel Vadot
601*c9ccf3a3SEmmanuel Vadotap_h1_i2c: &i2c12 {
602*c9ccf3a3SEmmanuel Vadot	status = "okay";
603*c9ccf3a3SEmmanuel Vadot	clock-frequency = <400000>;
604*c9ccf3a3SEmmanuel Vadot
605*c9ccf3a3SEmmanuel Vadot	tpm@50 {
606*c9ccf3a3SEmmanuel Vadot		compatible = "google,cr50";
607*c9ccf3a3SEmmanuel Vadot		reg = <0x50>;
608*c9ccf3a3SEmmanuel Vadot
609*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
610*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&h1_ap_int_odl>;
611*c9ccf3a3SEmmanuel Vadot
612*c9ccf3a3SEmmanuel Vadot		interrupt-parent = <&tlmm>;
613*c9ccf3a3SEmmanuel Vadot		interrupts = <54 IRQ_TYPE_EDGE_RISING>;
614*c9ccf3a3SEmmanuel Vadot	};
615*c9ccf3a3SEmmanuel Vadot};
616*c9ccf3a3SEmmanuel Vadot
617*c9ccf3a3SEmmanuel Vadotap_ts_pen: &i2c13 {
618*c9ccf3a3SEmmanuel Vadot	status = "okay";
619*c9ccf3a3SEmmanuel Vadot	clock-frequency = <400000>;
620*c9ccf3a3SEmmanuel Vadot
621*c9ccf3a3SEmmanuel Vadot	ap_ts: touchscreen@10 {
622*c9ccf3a3SEmmanuel Vadot		compatible = "hid-over-i2c";
623*c9ccf3a3SEmmanuel Vadot		reg = <0x10>;
624*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
625*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&ts_int_l>, <&ts_reset_l>;
626*c9ccf3a3SEmmanuel Vadot
627*c9ccf3a3SEmmanuel Vadot		interrupt-parent = <&tlmm>;
628*c9ccf3a3SEmmanuel Vadot		interrupts = <81 IRQ_TYPE_LEVEL_LOW>;
629*c9ccf3a3SEmmanuel Vadot
630*c9ccf3a3SEmmanuel Vadot		post-power-on-delay-ms = <20>;
631*c9ccf3a3SEmmanuel Vadot		hid-descr-addr = <0x0001>;
632*c9ccf3a3SEmmanuel Vadot
633*c9ccf3a3SEmmanuel Vadot		vdd-supply = <&pp3300_ts>;
634*c9ccf3a3SEmmanuel Vadot	};
635*c9ccf3a3SEmmanuel Vadot};
636*c9ccf3a3SEmmanuel Vadot
637*c9ccf3a3SEmmanuel Vadot&pm7325_gpios {
638*c9ccf3a3SEmmanuel Vadot	status = "disabled"; /* No GPIOs are connected */
639*c9ccf3a3SEmmanuel Vadot};
640*c9ccf3a3SEmmanuel Vadot
641*c9ccf3a3SEmmanuel Vadot&pmk8350_gpios {
642*c9ccf3a3SEmmanuel Vadot	status = "disabled"; /* No GPIOs are connected */
643*c9ccf3a3SEmmanuel Vadot};
644*c9ccf3a3SEmmanuel Vadot
645*c9ccf3a3SEmmanuel Vadot&pmk8350_rtc {
646*c9ccf3a3SEmmanuel Vadot	status = "disabled";
647*c9ccf3a3SEmmanuel Vadot};
648*c9ccf3a3SEmmanuel Vadot
649*c9ccf3a3SEmmanuel Vadot&pmk8350_vadc {
650*c9ccf3a3SEmmanuel Vadot	pmk8350_die_temp {
651*c9ccf3a3SEmmanuel Vadot		reg = <PMK8350_ADC7_DIE_TEMP>;
652*c9ccf3a3SEmmanuel Vadot		label = "pmk8350_die_temp";
653*c9ccf3a3SEmmanuel Vadot		qcom,pre-scaling = <1 1>;
654*c9ccf3a3SEmmanuel Vadot	};
655*c9ccf3a3SEmmanuel Vadot
656*c9ccf3a3SEmmanuel Vadot	pmr735a_die_temp {
657*c9ccf3a3SEmmanuel Vadot		reg = <PMR735A_ADC7_DIE_TEMP>;
658*c9ccf3a3SEmmanuel Vadot		label = "pmr735a_die_temp";
659*c9ccf3a3SEmmanuel Vadot		qcom,pre-scaling = <1 1>;
660*c9ccf3a3SEmmanuel Vadot	};
661*c9ccf3a3SEmmanuel Vadot};
662*c9ccf3a3SEmmanuel Vadot
663*c9ccf3a3SEmmanuel Vadot&qfprom {
664*c9ccf3a3SEmmanuel Vadot	vcc-supply = <&vdd_qfprom>;
665*c9ccf3a3SEmmanuel Vadot};
666*c9ccf3a3SEmmanuel Vadot
667*c9ccf3a3SEmmanuel Vadot&qupv3_id_0 {
668*c9ccf3a3SEmmanuel Vadot	status = "okay";
669*c9ccf3a3SEmmanuel Vadot};
670*c9ccf3a3SEmmanuel Vadot
671*c9ccf3a3SEmmanuel Vadot&qupv3_id_1 {
672*c9ccf3a3SEmmanuel Vadot	status = "okay";
673*c9ccf3a3SEmmanuel Vadot};
674*c9ccf3a3SEmmanuel Vadot
675*c9ccf3a3SEmmanuel Vadot&sdhc_1 {
676*c9ccf3a3SEmmanuel Vadot	status = "okay";
677*c9ccf3a3SEmmanuel Vadot
678*c9ccf3a3SEmmanuel Vadot	vmmc-supply = <&pp2950_l7b>;
679*c9ccf3a3SEmmanuel Vadot	vqmmc-supply = <&pp1800_l19b>;
680*c9ccf3a3SEmmanuel Vadot};
681*c9ccf3a3SEmmanuel Vadot
682*c9ccf3a3SEmmanuel Vadot&sdhc_2 {
683*c9ccf3a3SEmmanuel Vadot	status = "okay";
684*c9ccf3a3SEmmanuel Vadot
685*c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&sdc2_clk>, <&sdc2_cmd>, <&sdc2_data>, <&sd_cd>;
686*c9ccf3a3SEmmanuel Vadot	pinctrl-1 = <&sdc2_clk_sleep>, <&sdc2_cmd_sleep>, <&sdc2_data_sleep>, <&sd_cd>;
687*c9ccf3a3SEmmanuel Vadot	vmmc-supply = <&pp2950_l9c>;
688*c9ccf3a3SEmmanuel Vadot	vqmmc-supply = <&ppvar_l6c>;
689*c9ccf3a3SEmmanuel Vadot
690*c9ccf3a3SEmmanuel Vadot	cd-gpios = <&tlmm 91 GPIO_ACTIVE_LOW>;
691*c9ccf3a3SEmmanuel Vadot};
692*c9ccf3a3SEmmanuel Vadot
693*c9ccf3a3SEmmanuel Vadotap_ec_spi: &spi8 {
694*c9ccf3a3SEmmanuel Vadot	status = "okay";
695*c9ccf3a3SEmmanuel Vadot
696*c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&qup_spi8_data_clk>, <&qup_spi8_cs_gpio_init_high>, <&qup_spi8_cs_gpio>;
697*c9ccf3a3SEmmanuel Vadot	cs-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
698*c9ccf3a3SEmmanuel Vadot
699*c9ccf3a3SEmmanuel Vadot	cros_ec: ec@0 {
700*c9ccf3a3SEmmanuel Vadot		compatible = "google,cros-ec-spi";
701*c9ccf3a3SEmmanuel Vadot		reg = <0>;
702*c9ccf3a3SEmmanuel Vadot		interrupt-parent = <&tlmm>;
703*c9ccf3a3SEmmanuel Vadot		interrupts = <142 IRQ_TYPE_LEVEL_LOW>;
704*c9ccf3a3SEmmanuel Vadot		pinctrl-names = "default";
705*c9ccf3a3SEmmanuel Vadot		pinctrl-0 = <&ap_ec_int_l>;
706*c9ccf3a3SEmmanuel Vadot		spi-max-frequency = <3000000>;
707*c9ccf3a3SEmmanuel Vadot
708*c9ccf3a3SEmmanuel Vadot		cros_ec_pwm: pwm {
709*c9ccf3a3SEmmanuel Vadot			compatible = "google,cros-ec-pwm";
710*c9ccf3a3SEmmanuel Vadot			#pwm-cells = <1>;
711*c9ccf3a3SEmmanuel Vadot		};
712*c9ccf3a3SEmmanuel Vadot
713*c9ccf3a3SEmmanuel Vadot		i2c_tunnel: i2c-tunnel {
714*c9ccf3a3SEmmanuel Vadot			compatible = "google,cros-ec-i2c-tunnel";
715*c9ccf3a3SEmmanuel Vadot			google,remote-bus = <0>;
716*c9ccf3a3SEmmanuel Vadot			#address-cells = <1>;
717*c9ccf3a3SEmmanuel Vadot			#size-cells = <0>;
718*c9ccf3a3SEmmanuel Vadot		};
719*c9ccf3a3SEmmanuel Vadot
720*c9ccf3a3SEmmanuel Vadot		typec {
721*c9ccf3a3SEmmanuel Vadot			compatible = "google,cros-ec-typec";
722*c9ccf3a3SEmmanuel Vadot			#address-cells = <1>;
723*c9ccf3a3SEmmanuel Vadot			#size-cells = <0>;
724*c9ccf3a3SEmmanuel Vadot
725*c9ccf3a3SEmmanuel Vadot			usb_c0: connector@0 {
726*c9ccf3a3SEmmanuel Vadot				compatible = "usb-c-connector";
727*c9ccf3a3SEmmanuel Vadot				reg = <0>;
728*c9ccf3a3SEmmanuel Vadot				label = "left";
729*c9ccf3a3SEmmanuel Vadot				power-role = "dual";
730*c9ccf3a3SEmmanuel Vadot				data-role = "host";
731*c9ccf3a3SEmmanuel Vadot				try-power-role = "source";
732*c9ccf3a3SEmmanuel Vadot			};
733*c9ccf3a3SEmmanuel Vadot
734*c9ccf3a3SEmmanuel Vadot			usb_c1: connector@1 {
735*c9ccf3a3SEmmanuel Vadot				compatible = "usb-c-connector";
736*c9ccf3a3SEmmanuel Vadot				reg = <1>;
737*c9ccf3a3SEmmanuel Vadot				label = "right";
738*c9ccf3a3SEmmanuel Vadot				power-role = "dual";
739*c9ccf3a3SEmmanuel Vadot				data-role = "host";
740*c9ccf3a3SEmmanuel Vadot				try-power-role = "source";
741*c9ccf3a3SEmmanuel Vadot			};
742*c9ccf3a3SEmmanuel Vadot		};
743*c9ccf3a3SEmmanuel Vadot	};
744*c9ccf3a3SEmmanuel Vadot};
745*c9ccf3a3SEmmanuel Vadot
746*c9ccf3a3SEmmanuel Vadot#include <arm/cros-ec-keyboard.dtsi>
747*c9ccf3a3SEmmanuel Vadot#include <arm/cros-ec-sbs.dtsi>
748*c9ccf3a3SEmmanuel Vadot
749*c9ccf3a3SEmmanuel Vadot&keyboard_controller {
750*c9ccf3a3SEmmanuel Vadot	function-row-physmap = <
751*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x00, 0x02, 0)	/* T1 */
752*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x03, 0x02, 0)	/* T2 */
753*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x02, 0x02, 0)	/* T3 */
754*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x01, 0x02, 0)	/* T4 */
755*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x03, 0x04, 0)	/* T5 */
756*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x02, 0x04, 0)	/* T6 */
757*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x01, 0x04, 0)	/* T7 */
758*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x02, 0x09, 0)	/* T8 */
759*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x01, 0x09, 0)	/* T9 */
760*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x00, 0x04, 0)	/* T10 */
761*c9ccf3a3SEmmanuel Vadot	>;
762*c9ccf3a3SEmmanuel Vadot	linux,keymap = <
763*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x00, 0x02, KEY_BACK)
764*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x03, 0x02, KEY_REFRESH)
765*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x02, 0x02, KEY_ZOOM)
766*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x01, 0x02, KEY_SCALE)
767*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x03, 0x04, KEY_SYSRQ)
768*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x02, 0x04, KEY_BRIGHTNESSDOWN)
769*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x01, 0x04, KEY_BRIGHTNESSUP)
770*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x02, 0x09, KEY_MUTE)
771*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x01, 0x09, KEY_VOLUMEDOWN)
772*c9ccf3a3SEmmanuel Vadot		MATRIX_KEY(0x00, 0x04, KEY_VOLUMEUP)
773*c9ccf3a3SEmmanuel Vadot
774*c9ccf3a3SEmmanuel Vadot		CROS_STD_MAIN_KEYMAP
775*c9ccf3a3SEmmanuel Vadot	>;
776*c9ccf3a3SEmmanuel Vadot};
777*c9ccf3a3SEmmanuel Vadot
778*c9ccf3a3SEmmanuel Vadot&uart5 {
779*c9ccf3a3SEmmanuel Vadot	compatible = "qcom,geni-debug-uart";
780*c9ccf3a3SEmmanuel Vadot	status = "okay";
781*c9ccf3a3SEmmanuel Vadot};
782*c9ccf3a3SEmmanuel Vadot
783*c9ccf3a3SEmmanuel Vadot&uart7 {
784*c9ccf3a3SEmmanuel Vadot	status = "okay";
785*c9ccf3a3SEmmanuel Vadot};
786*c9ccf3a3SEmmanuel Vadot
787*c9ccf3a3SEmmanuel Vadot&usb_1 {
788*c9ccf3a3SEmmanuel Vadot	status = "okay";
789*c9ccf3a3SEmmanuel Vadot};
790*c9ccf3a3SEmmanuel Vadot
791*c9ccf3a3SEmmanuel Vadot&usb_1_dwc3 {
792*c9ccf3a3SEmmanuel Vadot	dr_mode = "host";
793*c9ccf3a3SEmmanuel Vadot};
794*c9ccf3a3SEmmanuel Vadot
795*c9ccf3a3SEmmanuel Vadot&usb_1_hsphy {
796*c9ccf3a3SEmmanuel Vadot	status = "okay";
797*c9ccf3a3SEmmanuel Vadot
798*c9ccf3a3SEmmanuel Vadot	vdda-pll-supply = <&vdd_usb_hs0_core>;
799*c9ccf3a3SEmmanuel Vadot	vdda33-supply = <&vdda_usb_hs0_3p1>;
800*c9ccf3a3SEmmanuel Vadot	vdda18-supply = <&vdda_usb_hs0_1p8>;
801*c9ccf3a3SEmmanuel Vadot};
802*c9ccf3a3SEmmanuel Vadot
803*c9ccf3a3SEmmanuel Vadot&usb_1_qmpphy {
804*c9ccf3a3SEmmanuel Vadot	status = "okay";
805*c9ccf3a3SEmmanuel Vadot
806*c9ccf3a3SEmmanuel Vadot	vdda-phy-supply = <&vdda_usb_ss_dp_1p2>;
807*c9ccf3a3SEmmanuel Vadot	vdda-pll-supply = <&vdda_usb_ss_dp_core>;
808*c9ccf3a3SEmmanuel Vadot};
809*c9ccf3a3SEmmanuel Vadot
810*c9ccf3a3SEmmanuel Vadot&usb_2 {
811*c9ccf3a3SEmmanuel Vadot	status = "okay";
812*c9ccf3a3SEmmanuel Vadot};
813*c9ccf3a3SEmmanuel Vadot
814*c9ccf3a3SEmmanuel Vadot&usb_2_dwc3 {
815*c9ccf3a3SEmmanuel Vadot	dr_mode = "host";
816*c9ccf3a3SEmmanuel Vadot};
817*c9ccf3a3SEmmanuel Vadot
818*c9ccf3a3SEmmanuel Vadot&usb_2_hsphy {
819*c9ccf3a3SEmmanuel Vadot	status = "okay";
820*c9ccf3a3SEmmanuel Vadot
821*c9ccf3a3SEmmanuel Vadot	vdda-pll-supply = <&vdd_usb_hs0_core>;
822*c9ccf3a3SEmmanuel Vadot	vdda33-supply = <&vdda_usb_hs0_3p1>;
823*c9ccf3a3SEmmanuel Vadot	vdda18-supply = <&vdda_usb_hs0_1p8>;
824*c9ccf3a3SEmmanuel Vadot};
825*c9ccf3a3SEmmanuel Vadot
826*c9ccf3a3SEmmanuel Vadot/* PINCTRL - additions to nodes defined in sc7280.dtsi */
827*c9ccf3a3SEmmanuel Vadot
828*c9ccf3a3SEmmanuel Vadot&dp_hot_plug_det {
829*c9ccf3a3SEmmanuel Vadot	bias-disable;
830*c9ccf3a3SEmmanuel Vadot};
831*c9ccf3a3SEmmanuel Vadot
832*c9ccf3a3SEmmanuel Vadot&pcie1_clkreq_n {
833*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
834*c9ccf3a3SEmmanuel Vadot	drive-strength = <2>;
835*c9ccf3a3SEmmanuel Vadot};
836*c9ccf3a3SEmmanuel Vadot
837*c9ccf3a3SEmmanuel Vadot&qspi_cs0 {
838*c9ccf3a3SEmmanuel Vadot	bias-disable;
839*c9ccf3a3SEmmanuel Vadot};
840*c9ccf3a3SEmmanuel Vadot
841*c9ccf3a3SEmmanuel Vadot&qspi_clk {
842*c9ccf3a3SEmmanuel Vadot	bias-disable;
843*c9ccf3a3SEmmanuel Vadot};
844*c9ccf3a3SEmmanuel Vadot
845*c9ccf3a3SEmmanuel Vadot&qspi_data01 {
846*c9ccf3a3SEmmanuel Vadot	/* High-Z when no transfers; nice to park the lines */
847*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
848*c9ccf3a3SEmmanuel Vadot};
849*c9ccf3a3SEmmanuel Vadot
850*c9ccf3a3SEmmanuel Vadot&qup_uart5_rx {
851*c9ccf3a3SEmmanuel Vadot	drive-strength = <2>;
852*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
853*c9ccf3a3SEmmanuel Vadot};
854*c9ccf3a3SEmmanuel Vadot
855*c9ccf3a3SEmmanuel Vadot&qup_uart5_tx {
856*c9ccf3a3SEmmanuel Vadot	drive-strength = <2>;
857*c9ccf3a3SEmmanuel Vadot	bias-disable;
858*c9ccf3a3SEmmanuel Vadot};
859*c9ccf3a3SEmmanuel Vadot
860*c9ccf3a3SEmmanuel Vadot&qup_uart7_cts {
861*c9ccf3a3SEmmanuel Vadot	/*
862*c9ccf3a3SEmmanuel Vadot	 * Configure a pull-down on CTS to match the pull of
863*c9ccf3a3SEmmanuel Vadot	 * the Bluetooth module.
864*c9ccf3a3SEmmanuel Vadot	 */
865*c9ccf3a3SEmmanuel Vadot	bias-pull-down;
866*c9ccf3a3SEmmanuel Vadot};
867*c9ccf3a3SEmmanuel Vadot
868*c9ccf3a3SEmmanuel Vadot&qup_uart7_rts {
869*c9ccf3a3SEmmanuel Vadot	/* We'll drive RTS, so no pull */
870*c9ccf3a3SEmmanuel Vadot	drive-strength = <2>;
871*c9ccf3a3SEmmanuel Vadot	bias-disable;
872*c9ccf3a3SEmmanuel Vadot};
873*c9ccf3a3SEmmanuel Vadot
874*c9ccf3a3SEmmanuel Vadot&qup_uart7_tx {
875*c9ccf3a3SEmmanuel Vadot	/* We'll drive TX, so no pull */
876*c9ccf3a3SEmmanuel Vadot	drive-strength = <2>;
877*c9ccf3a3SEmmanuel Vadot	bias-disable;
878*c9ccf3a3SEmmanuel Vadot};
879*c9ccf3a3SEmmanuel Vadot
880*c9ccf3a3SEmmanuel Vadot&qup_uart7_rx {
881*c9ccf3a3SEmmanuel Vadot	/*
882*c9ccf3a3SEmmanuel Vadot	 * Configure a pull-up on RX. This is needed to avoid
883*c9ccf3a3SEmmanuel Vadot	 * garbage data when the TX pin of the Bluetooth module is
884*c9ccf3a3SEmmanuel Vadot	 * in tri-state (module powered off or not driving the
885*c9ccf3a3SEmmanuel Vadot	 * signal yet).
886*c9ccf3a3SEmmanuel Vadot	 */
887*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
888*c9ccf3a3SEmmanuel Vadot};
889*c9ccf3a3SEmmanuel Vadot
890*c9ccf3a3SEmmanuel Vadot&sdc1_clk {
891*c9ccf3a3SEmmanuel Vadot	bias-disable;
892*c9ccf3a3SEmmanuel Vadot	drive-strength = <16>;
893*c9ccf3a3SEmmanuel Vadot};
894*c9ccf3a3SEmmanuel Vadot
895*c9ccf3a3SEmmanuel Vadot&sdc1_cmd {
896*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
897*c9ccf3a3SEmmanuel Vadot	drive-strength = <10>;
898*c9ccf3a3SEmmanuel Vadot};
899*c9ccf3a3SEmmanuel Vadot
900*c9ccf3a3SEmmanuel Vadot&sdc1_data {
901*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
902*c9ccf3a3SEmmanuel Vadot	drive-strength = <10>;
903*c9ccf3a3SEmmanuel Vadot};
904*c9ccf3a3SEmmanuel Vadot
905*c9ccf3a3SEmmanuel Vadot&sdc1_rclk {
906*c9ccf3a3SEmmanuel Vadot	bias-pull-down;
907*c9ccf3a3SEmmanuel Vadot};
908*c9ccf3a3SEmmanuel Vadot
909*c9ccf3a3SEmmanuel Vadot&sdc2_clk {
910*c9ccf3a3SEmmanuel Vadot	bias-disable;
911*c9ccf3a3SEmmanuel Vadot	drive-strength = <16>;
912*c9ccf3a3SEmmanuel Vadot};
913*c9ccf3a3SEmmanuel Vadot
914*c9ccf3a3SEmmanuel Vadot&sdc2_cmd {
915*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
916*c9ccf3a3SEmmanuel Vadot	drive-strength = <10>;
917*c9ccf3a3SEmmanuel Vadot};
918*c9ccf3a3SEmmanuel Vadot
919*c9ccf3a3SEmmanuel Vadot&sdc2_data {
920*c9ccf3a3SEmmanuel Vadot	bias-pull-up;
921*c9ccf3a3SEmmanuel Vadot	drive-strength = <10>;
922*c9ccf3a3SEmmanuel Vadot};
923*c9ccf3a3SEmmanuel Vadot
924*c9ccf3a3SEmmanuel Vadot/* PINCTRL - board-specific pinctrl */
925*c9ccf3a3SEmmanuel Vadot
926*c9ccf3a3SEmmanuel Vadot&pm8350c_gpios {
927*c9ccf3a3SEmmanuel Vadot	gpio-line-names = "AP_SUSPEND",
928*c9ccf3a3SEmmanuel Vadot			  "",
929*c9ccf3a3SEmmanuel Vadot			  "",
930*c9ccf3a3SEmmanuel Vadot			  "AP_BL_EN",
931*c9ccf3a3SEmmanuel Vadot			  "",
932*c9ccf3a3SEmmanuel Vadot			  "SD_CD_ODL",
933*c9ccf3a3SEmmanuel Vadot			  "",
934*c9ccf3a3SEmmanuel Vadot			  "",
935*c9ccf3a3SEmmanuel Vadot			  "AP_BL_PWM";
936*c9ccf3a3SEmmanuel Vadot
937*c9ccf3a3SEmmanuel Vadot	ap_bl_en: ap-bl-en {
938*c9ccf3a3SEmmanuel Vadot		pins = "gpio4";
939*c9ccf3a3SEmmanuel Vadot		function = "normal";
940*c9ccf3a3SEmmanuel Vadot		qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
941*c9ccf3a3SEmmanuel Vadot		bias-disable;
942*c9ccf3a3SEmmanuel Vadot
943*c9ccf3a3SEmmanuel Vadot		/* Force backlight to be disabled to match state at boot. */
944*c9ccf3a3SEmmanuel Vadot		output-low;
945*c9ccf3a3SEmmanuel Vadot	};
946*c9ccf3a3SEmmanuel Vadot};
947*c9ccf3a3SEmmanuel Vadot
948*c9ccf3a3SEmmanuel Vadot&tlmm {
949*c9ccf3a3SEmmanuel Vadot	gpio-line-names = "HP_I2C_SDA",			/* 0 */
950*c9ccf3a3SEmmanuel Vadot			  "HP_I2C_SCL",
951*c9ccf3a3SEmmanuel Vadot			  "SSD_RST_L",
952*c9ccf3a3SEmmanuel Vadot			  "PE_WAKE_ODL",
953*c9ccf3a3SEmmanuel Vadot			  "AP_TP_I2C_SDA",
954*c9ccf3a3SEmmanuel Vadot			  "AP_TP_I2C_SCL",
955*c9ccf3a3SEmmanuel Vadot			  "UF_CAM_EN",
956*c9ccf3a3SEmmanuel Vadot			  "WF_CAM_EN",
957*c9ccf3a3SEmmanuel Vadot			  "AP_SAR_SENSOR_SDA",
958*c9ccf3a3SEmmanuel Vadot			  "AP_SAR_SENSOR_SCL",
959*c9ccf3a3SEmmanuel Vadot
960*c9ccf3a3SEmmanuel Vadot			  "",				/* 10 */
961*c9ccf3a3SEmmanuel Vadot			  "",
962*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_MOSI",
963*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_MISO",
964*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_CLK",
965*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_CS0_L",
966*c9ccf3a3SEmmanuel Vadot			  "",
967*c9ccf3a3SEmmanuel Vadot			  "",
968*c9ccf3a3SEmmanuel Vadot			  "EDP_HPD",
969*c9ccf3a3SEmmanuel Vadot			  "",
970*c9ccf3a3SEmmanuel Vadot
971*c9ccf3a3SEmmanuel Vadot			  "UF_CAM_RST_L",		/* 20 */
972*c9ccf3a3SEmmanuel Vadot			  "WF_CAM_RST_L",
973*c9ccf3a3SEmmanuel Vadot			  "UART_AP_TX_DBG_RX",
974*c9ccf3a3SEmmanuel Vadot			  "UART_DBG_TX_AP_RX",
975*c9ccf3a3SEmmanuel Vadot			  "EN_PP3300_HUB",
976*c9ccf3a3SEmmanuel Vadot			  "",
977*c9ccf3a3SEmmanuel Vadot			  "HOST2WLAN_SOL",
978*c9ccf3a3SEmmanuel Vadot			  "WLAN2HOST_SOL",
979*c9ccf3a3SEmmanuel Vadot			  "BT_UART_CTS",
980*c9ccf3a3SEmmanuel Vadot			  "BT_UART_RTS",
981*c9ccf3a3SEmmanuel Vadot
982*c9ccf3a3SEmmanuel Vadot			  "BT_UART_TXD",		/* 30 */
983*c9ccf3a3SEmmanuel Vadot			  "BT_UART_RXD",
984*c9ccf3a3SEmmanuel Vadot			  "AP_EC_SPI_MISO",
985*c9ccf3a3SEmmanuel Vadot			  "AP_EC_SPI_MOSI",
986*c9ccf3a3SEmmanuel Vadot			  "AP_EC_SPI_CLK",
987*c9ccf3a3SEmmanuel Vadot			  "AP_EC_SPI_CS_L",
988*c9ccf3a3SEmmanuel Vadot			  "",
989*c9ccf3a3SEmmanuel Vadot			  "",
990*c9ccf3a3SEmmanuel Vadot			  "",
991*c9ccf3a3SEmmanuel Vadot			  "PEN_PDCT_L",
992*c9ccf3a3SEmmanuel Vadot
993*c9ccf3a3SEmmanuel Vadot			  "IO_BRD_ID0",			/* 40 */
994*c9ccf3a3SEmmanuel Vadot			  "IO_BRD_ID1",
995*c9ccf3a3SEmmanuel Vadot			  "EN_FP_RAILS",
996*c9ccf3a3SEmmanuel Vadot			  "PEN_IRQ_L",
997*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_FP_MISO",
998*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_FP_MOSI",
999*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_FP_CLK",
1000*c9ccf3a3SEmmanuel Vadot			  "AP_SPI_FP_CS_L",
1001*c9ccf3a3SEmmanuel Vadot			  "AP_H1_SPI_MISO",
1002*c9ccf3a3SEmmanuel Vadot			  "AP_H1_SPI_MOSI",
1003*c9ccf3a3SEmmanuel Vadot
1004*c9ccf3a3SEmmanuel Vadot			  "AP_H1_SPI_CLK",		/* 50 */
1005*c9ccf3a3SEmmanuel Vadot			  "AP_H1_SPI_CS_L",
1006*c9ccf3a3SEmmanuel Vadot			  "AP_TS_PEN_I2C_SDA",
1007*c9ccf3a3SEmmanuel Vadot			  "AP_TS_PEN_I2C_SCL",
1008*c9ccf3a3SEmmanuel Vadot			  "H1_AP_INT_ODL",
1009*c9ccf3a3SEmmanuel Vadot			  "",
1010*c9ccf3a3SEmmanuel Vadot			  "LCM_RST_1V8_L",
1011*c9ccf3a3SEmmanuel Vadot			  "AMP_EN",
1012*c9ccf3a3SEmmanuel Vadot			  "",
1013*c9ccf3a3SEmmanuel Vadot			  "DP_HOT_PLUG_DET",
1014*c9ccf3a3SEmmanuel Vadot
1015*c9ccf3a3SEmmanuel Vadot			  "HUB_RST_L",			/* 60 */
1016*c9ccf3a3SEmmanuel Vadot			  "FP_TO_AP_IRQ_L",
1017*c9ccf3a3SEmmanuel Vadot			  "",
1018*c9ccf3a3SEmmanuel Vadot			  "",
1019*c9ccf3a3SEmmanuel Vadot			  "UF_CAM_MCLK",
1020*c9ccf3a3SEmmanuel Vadot			  "WF_CAM_MCLK",
1021*c9ccf3a3SEmmanuel Vadot			  "IO_BRD_ID2",
1022*c9ccf3a3SEmmanuel Vadot			  "EN_PP3300_CODEC",
1023*c9ccf3a3SEmmanuel Vadot			  "EC_IN_RW_ODL",
1024*c9ccf3a3SEmmanuel Vadot			  "UF_CAM_SDA",
1025*c9ccf3a3SEmmanuel Vadot
1026*c9ccf3a3SEmmanuel Vadot			  "UF_CAM_SCL",			/* 70 */
1027*c9ccf3a3SEmmanuel Vadot			  "WF_CAM_SDA",
1028*c9ccf3a3SEmmanuel Vadot			  "WF_CAM_SCL",
1029*c9ccf3a3SEmmanuel Vadot			  "AP_BRD_ID0",
1030*c9ccf3a3SEmmanuel Vadot			  "AP_BRD_ID1",
1031*c9ccf3a3SEmmanuel Vadot			  "AP_BRD_ID2",
1032*c9ccf3a3SEmmanuel Vadot			  "",
1033*c9ccf3a3SEmmanuel Vadot			  "FPMCU_BOOT0",
1034*c9ccf3a3SEmmanuel Vadot			  "FP_RST_L",
1035*c9ccf3a3SEmmanuel Vadot			  "PE_CLKREQ_ODL",
1036*c9ccf3a3SEmmanuel Vadot
1037*c9ccf3a3SEmmanuel Vadot			  "EN_EDP_PP3300",		/* 80 */
1038*c9ccf3a3SEmmanuel Vadot			  "TS_INT_L",
1039*c9ccf3a3SEmmanuel Vadot			  "FORCE_USB_BOOT",
1040*c9ccf3a3SEmmanuel Vadot			  "WCD_RST_L",
1041*c9ccf3a3SEmmanuel Vadot			  "WLAN_EN",
1042*c9ccf3a3SEmmanuel Vadot			  "BT_EN",
1043*c9ccf3a3SEmmanuel Vadot			  "WLAN_SW_CTRL",
1044*c9ccf3a3SEmmanuel Vadot			  "PCIE0_RESET_L",
1045*c9ccf3a3SEmmanuel Vadot			  "PCIE0_CLK_REQ_L",
1046*c9ccf3a3SEmmanuel Vadot			  "PCIE0_WAKE_L",
1047*c9ccf3a3SEmmanuel Vadot
1048*c9ccf3a3SEmmanuel Vadot			  "AS_EN",			/* 90 */
1049*c9ccf3a3SEmmanuel Vadot			  "SD_CD_ODL",
1050*c9ccf3a3SEmmanuel Vadot			  "",
1051*c9ccf3a3SEmmanuel Vadot			  /*
1052*c9ccf3a3SEmmanuel Vadot			   * AP_FLASH_WP_L is crossystem ABI. Schematics
1053*c9ccf3a3SEmmanuel Vadot			   * call it BIOS_FLASH_WP_L.
1054*c9ccf3a3SEmmanuel Vadot			   */
1055*c9ccf3a3SEmmanuel Vadot			  "AP_FLASH_WP_L",
1056*c9ccf3a3SEmmanuel Vadot			  "BT_WLAN_SB_CLK",
1057*c9ccf3a3SEmmanuel Vadot			  "BT_WLAN_SB_DATA",
1058*c9ccf3a3SEmmanuel Vadot			  "HP_MCLK",
1059*c9ccf3a3SEmmanuel Vadot			  "HP_BCLK",
1060*c9ccf3a3SEmmanuel Vadot			  "HP_DOUT",
1061*c9ccf3a3SEmmanuel Vadot			  "HP_DIN",
1062*c9ccf3a3SEmmanuel Vadot
1063*c9ccf3a3SEmmanuel Vadot			  "HP_LRCLK",			/* 100 */
1064*c9ccf3a3SEmmanuel Vadot			  "HP_IRQ",
1065*c9ccf3a3SEmmanuel Vadot			  "TP_INT_ODL",
1066*c9ccf3a3SEmmanuel Vadot			  "",
1067*c9ccf3a3SEmmanuel Vadot			  "IO_SKU_ID2",
1068*c9ccf3a3SEmmanuel Vadot			  "TS_RESET_L",
1069*c9ccf3a3SEmmanuel Vadot			  "AMP_BCLK",
1070*c9ccf3a3SEmmanuel Vadot			  "AMP_DIN",
1071*c9ccf3a3SEmmanuel Vadot			  "AMP_LRCLK",
1072*c9ccf3a3SEmmanuel Vadot			  "UIM2_DATA",
1073*c9ccf3a3SEmmanuel Vadot
1074*c9ccf3a3SEmmanuel Vadot			  "UIM2_CLK",			/* 110 */
1075*c9ccf3a3SEmmanuel Vadot			  "UIM2_RST",
1076*c9ccf3a3SEmmanuel Vadot			  "UIM2_PRESENT",
1077*c9ccf3a3SEmmanuel Vadot			  "UIM1_DATA",
1078*c9ccf3a3SEmmanuel Vadot			  "UIM1_CLK",
1079*c9ccf3a3SEmmanuel Vadot			  "UIM1_RST",
1080*c9ccf3a3SEmmanuel Vadot			  "",
1081*c9ccf3a3SEmmanuel Vadot			  "RFFE0_CLK",
1082*c9ccf3a3SEmmanuel Vadot			  "RFFE0_DATA/BOOT_CONFIG_0",
1083*c9ccf3a3SEmmanuel Vadot			  "RFFE1_CLK",
1084*c9ccf3a3SEmmanuel Vadot
1085*c9ccf3a3SEmmanuel Vadot			  "RFFE1_DATA/BOOT_CONFIG_1",	/* 120 */
1086*c9ccf3a3SEmmanuel Vadot			  "RFFE2_CLK",
1087*c9ccf3a3SEmmanuel Vadot			  "RFFE2_DATA/BOOT_CONFIG_2",
1088*c9ccf3a3SEmmanuel Vadot			  "RFFE3_CLK",
1089*c9ccf3a3SEmmanuel Vadot			  "RFFE3_DATA/BOOT_CONFIG_3",
1090*c9ccf3a3SEmmanuel Vadot			  "RFFE4_CLK",
1091*c9ccf3a3SEmmanuel Vadot			  "RFFE4_DATA",
1092*c9ccf3a3SEmmanuel Vadot			  "WCI2_LTE_COEX_RXD",
1093*c9ccf3a3SEmmanuel Vadot			  "WCI2_LTE_COEX_TXD",
1094*c9ccf3a3SEmmanuel Vadot			  "IO_SKU_ID0",
1095*c9ccf3a3SEmmanuel Vadot
1096*c9ccf3a3SEmmanuel Vadot			  "IO_SKU_ID1",			/* 130 */
1097*c9ccf3a3SEmmanuel Vadot			  "",
1098*c9ccf3a3SEmmanuel Vadot			  "",
1099*c9ccf3a3SEmmanuel Vadot			  "QLINK0_REQ",
1100*c9ccf3a3SEmmanuel Vadot			  "QLINK0_EN",
1101*c9ccf3a3SEmmanuel Vadot			  "QLINK0_WMSS_RESET_L",
1102*c9ccf3a3SEmmanuel Vadot			  "QLINK1_REQ",
1103*c9ccf3a3SEmmanuel Vadot			  "QLINK1_EN",
1104*c9ccf3a3SEmmanuel Vadot			  "QLINK1_WMSS_RESET_L",
1105*c9ccf3a3SEmmanuel Vadot			  "FORCED_USB_BOOT_POL",
1106*c9ccf3a3SEmmanuel Vadot
1107*c9ccf3a3SEmmanuel Vadot			  "",				/* 140 */
1108*c9ccf3a3SEmmanuel Vadot			  "P_SENSOR_INT_L",
1109*c9ccf3a3SEmmanuel Vadot			  "AP_EC_INT_L",
1110*c9ccf3a3SEmmanuel Vadot			  "",
1111*c9ccf3a3SEmmanuel Vadot			  "WCD_SWR_TX_CLK",
1112*c9ccf3a3SEmmanuel Vadot			  "WCD_SWR_TX_DATA_0",
1113*c9ccf3a3SEmmanuel Vadot			  "WCD_SWR_TX_DATA_1",
1114*c9ccf3a3SEmmanuel Vadot			  "WCD_SWR_RX_CLK",
1115*c9ccf3a3SEmmanuel Vadot			  "WCD_SWR_RX_DATA_0",
1116*c9ccf3a3SEmmanuel Vadot			  "WCD_SWR_RX_DATA_1",
1117*c9ccf3a3SEmmanuel Vadot
1118*c9ccf3a3SEmmanuel Vadot			  "",				/* 150 */
1119*c9ccf3a3SEmmanuel Vadot			  "",
1120*c9ccf3a3SEmmanuel Vadot			  "",
1121*c9ccf3a3SEmmanuel Vadot			  "",
1122*c9ccf3a3SEmmanuel Vadot			  "",
1123*c9ccf3a3SEmmanuel Vadot			  "",
1124*c9ccf3a3SEmmanuel Vadot			  "",
1125*c9ccf3a3SEmmanuel Vadot			  "",
1126*c9ccf3a3SEmmanuel Vadot			  "WCD_SWR_TX_DATA_2",
1127*c9ccf3a3SEmmanuel Vadot			  "",
1128*c9ccf3a3SEmmanuel Vadot
1129*c9ccf3a3SEmmanuel Vadot			  "",				/* 160 */
1130*c9ccf3a3SEmmanuel Vadot			  "",
1131*c9ccf3a3SEmmanuel Vadot			  "",
1132*c9ccf3a3SEmmanuel Vadot			  "",
1133*c9ccf3a3SEmmanuel Vadot			  "",
1134*c9ccf3a3SEmmanuel Vadot			  "",
1135*c9ccf3a3SEmmanuel Vadot			  "",
1136*c9ccf3a3SEmmanuel Vadot			  "",
1137*c9ccf3a3SEmmanuel Vadot			  "",
1138*c9ccf3a3SEmmanuel Vadot			  "",
1139*c9ccf3a3SEmmanuel Vadot
1140*c9ccf3a3SEmmanuel Vadot			  "",				/* 170 */
1141*c9ccf3a3SEmmanuel Vadot			  "SENS_UART_TXD",
1142*c9ccf3a3SEmmanuel Vadot			  "SENS_UART_RXD",
1143*c9ccf3a3SEmmanuel Vadot			  "",
1144*c9ccf3a3SEmmanuel Vadot			  "",
1145*c9ccf3a3SEmmanuel Vadot			  "";
1146*c9ccf3a3SEmmanuel Vadot
1147*c9ccf3a3SEmmanuel Vadot	/*
1148*c9ccf3a3SEmmanuel Vadot	 * pinctrl settings for pins that have no real owners.
1149*c9ccf3a3SEmmanuel Vadot	 */
1150*c9ccf3a3SEmmanuel Vadot	pinctrl-names = "default";
1151*c9ccf3a3SEmmanuel Vadot	pinctrl-0 = <&bios_flash_wp_l>;
1152*c9ccf3a3SEmmanuel Vadot
1153*c9ccf3a3SEmmanuel Vadot	amp_en: amp-en {
1154*c9ccf3a3SEmmanuel Vadot		pins = "gpio57";
1155*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1156*c9ccf3a3SEmmanuel Vadot		bias-pull-down;
1157*c9ccf3a3SEmmanuel Vadot	};
1158*c9ccf3a3SEmmanuel Vadot
1159*c9ccf3a3SEmmanuel Vadot	ap_ec_int_l: ap-ec-int-l {
1160*c9ccf3a3SEmmanuel Vadot		pins = "gpio142";
1161*c9ccf3a3SEmmanuel Vadot		input-enable;
1162*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1163*c9ccf3a3SEmmanuel Vadot	};
1164*c9ccf3a3SEmmanuel Vadot
1165*c9ccf3a3SEmmanuel Vadot	bios_flash_wp_l: bios-flash-wp-l {
1166*c9ccf3a3SEmmanuel Vadot		pins = "gpio93";
1167*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1168*c9ccf3a3SEmmanuel Vadot		input-enable;
1169*c9ccf3a3SEmmanuel Vadot		bias-disable;
1170*c9ccf3a3SEmmanuel Vadot	};
1171*c9ccf3a3SEmmanuel Vadot
1172*c9ccf3a3SEmmanuel Vadot	bt_en: bt-en {
1173*c9ccf3a3SEmmanuel Vadot		pins = "gpio85";
1174*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1175*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1176*c9ccf3a3SEmmanuel Vadot		output-low;
1177*c9ccf3a3SEmmanuel Vadot		bias-pull-down;
1178*c9ccf3a3SEmmanuel Vadot	};
1179*c9ccf3a3SEmmanuel Vadot
1180*c9ccf3a3SEmmanuel Vadot	en_fp_rails: en-fp-rails {
1181*c9ccf3a3SEmmanuel Vadot		pins = "gpio42";
1182*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1183*c9ccf3a3SEmmanuel Vadot		output-high;
1184*c9ccf3a3SEmmanuel Vadot		bias-disable;
1185*c9ccf3a3SEmmanuel Vadot	};
1186*c9ccf3a3SEmmanuel Vadot
1187*c9ccf3a3SEmmanuel Vadot	en_pp3300_codec: en-pp3300-codec {
1188*c9ccf3a3SEmmanuel Vadot		pins = "gpio67";
1189*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1190*c9ccf3a3SEmmanuel Vadot		bias-disable;
1191*c9ccf3a3SEmmanuel Vadot	};
1192*c9ccf3a3SEmmanuel Vadot
1193*c9ccf3a3SEmmanuel Vadot	en_pp3300_dx_edp: en-pp3300-dx-edp {
1194*c9ccf3a3SEmmanuel Vadot		pins = "gpio80";
1195*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1196*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1197*c9ccf3a3SEmmanuel Vadot		/* Has external pulldown */
1198*c9ccf3a3SEmmanuel Vadot		bias-disable;
1199*c9ccf3a3SEmmanuel Vadot	};
1200*c9ccf3a3SEmmanuel Vadot
1201*c9ccf3a3SEmmanuel Vadot	en_pp3300_hub: en-pp3300-hub {
1202*c9ccf3a3SEmmanuel Vadot		pins = "gpio24";
1203*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1204*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1205*c9ccf3a3SEmmanuel Vadot		/* Has external pulldown */
1206*c9ccf3a3SEmmanuel Vadot		bias-disable;
1207*c9ccf3a3SEmmanuel Vadot	};
1208*c9ccf3a3SEmmanuel Vadot
1209*c9ccf3a3SEmmanuel Vadot	fp_to_ap_irq_l: fp-to-ap-irq-l {
1210*c9ccf3a3SEmmanuel Vadot		pins = "gpio61";
1211*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1212*c9ccf3a3SEmmanuel Vadot		input-enable;
1213*c9ccf3a3SEmmanuel Vadot		/* Has external pullup */
1214*c9ccf3a3SEmmanuel Vadot		bias-disable;
1215*c9ccf3a3SEmmanuel Vadot	};
1216*c9ccf3a3SEmmanuel Vadot
1217*c9ccf3a3SEmmanuel Vadot	h1_ap_int_odl: h1-ap-int-odl {
1218*c9ccf3a3SEmmanuel Vadot		pins = "gpio54";
1219*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1220*c9ccf3a3SEmmanuel Vadot		input-enable;
1221*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1222*c9ccf3a3SEmmanuel Vadot	};
1223*c9ccf3a3SEmmanuel Vadot
1224*c9ccf3a3SEmmanuel Vadot	hp_irq: hp-irq {
1225*c9ccf3a3SEmmanuel Vadot		pins = "gpio101";
1226*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1227*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1228*c9ccf3a3SEmmanuel Vadot	};
1229*c9ccf3a3SEmmanuel Vadot
1230*c9ccf3a3SEmmanuel Vadot	p_sensor_int_l: p-sensor-int-l {
1231*c9ccf3a3SEmmanuel Vadot		pins = "gpio141";
1232*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1233*c9ccf3a3SEmmanuel Vadot		input-enable;
1234*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1235*c9ccf3a3SEmmanuel Vadot	};
1236*c9ccf3a3SEmmanuel Vadot
1237*c9ccf3a3SEmmanuel Vadot	pen_irq_l: pen-irq-l {
1238*c9ccf3a3SEmmanuel Vadot		pins = "gpio43";
1239*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1240*c9ccf3a3SEmmanuel Vadot		/* Has external pullup */
1241*c9ccf3a3SEmmanuel Vadot		bias-disable;
1242*c9ccf3a3SEmmanuel Vadot	};
1243*c9ccf3a3SEmmanuel Vadot
1244*c9ccf3a3SEmmanuel Vadot	pen_pdct_l: pen-pdct-l {
1245*c9ccf3a3SEmmanuel Vadot		pins = "gpio39";
1246*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1247*c9ccf3a3SEmmanuel Vadot		/* Has external pullup */
1248*c9ccf3a3SEmmanuel Vadot		bias-disable;
1249*c9ccf3a3SEmmanuel Vadot	};
1250*c9ccf3a3SEmmanuel Vadot
1251*c9ccf3a3SEmmanuel Vadot	qup_spi8_cs_gpio_init_high: qup-spi8-cs-gpio-init-high {
1252*c9ccf3a3SEmmanuel Vadot		pins = "gpio35";
1253*c9ccf3a3SEmmanuel Vadot		output-high;
1254*c9ccf3a3SEmmanuel Vadot	};
1255*c9ccf3a3SEmmanuel Vadot
1256*c9ccf3a3SEmmanuel Vadot	qup_spi11_cs_gpio_init_high: qup-spi11-cs-gpio-init-high {
1257*c9ccf3a3SEmmanuel Vadot		pins = "gpio47";
1258*c9ccf3a3SEmmanuel Vadot		output-high;
1259*c9ccf3a3SEmmanuel Vadot	};
1260*c9ccf3a3SEmmanuel Vadot
1261*c9ccf3a3SEmmanuel Vadot	qup_spi12_cs_gpio_init_high: qup-spi12-cs-gpio-init-high {
1262*c9ccf3a3SEmmanuel Vadot		pins = "gpio51";
1263*c9ccf3a3SEmmanuel Vadot		output-high;
1264*c9ccf3a3SEmmanuel Vadot	};
1265*c9ccf3a3SEmmanuel Vadot
1266*c9ccf3a3SEmmanuel Vadot	qup_uart7_sleep_cts: qup-uart7-sleep-cts {
1267*c9ccf3a3SEmmanuel Vadot		pins = "gpio28";
1268*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1269*c9ccf3a3SEmmanuel Vadot		/*
1270*c9ccf3a3SEmmanuel Vadot		 * Configure a pull-down on CTS to match the pull of
1271*c9ccf3a3SEmmanuel Vadot		 * the Bluetooth module.
1272*c9ccf3a3SEmmanuel Vadot		 */
1273*c9ccf3a3SEmmanuel Vadot		bias-pull-down;
1274*c9ccf3a3SEmmanuel Vadot	};
1275*c9ccf3a3SEmmanuel Vadot
1276*c9ccf3a3SEmmanuel Vadot	qup_uart7_sleep_rts: qup-uart7-sleep-rts {
1277*c9ccf3a3SEmmanuel Vadot		pins = "gpio29";
1278*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1279*c9ccf3a3SEmmanuel Vadot		/*
1280*c9ccf3a3SEmmanuel Vadot		 * Configure pull-down on RTS. As RTS is active low
1281*c9ccf3a3SEmmanuel Vadot		 * signal, pull it low to indicate the BT SoC that it
1282*c9ccf3a3SEmmanuel Vadot		 * can wakeup the system anytime from suspend state by
1283*c9ccf3a3SEmmanuel Vadot		 * pulling RX low (by sending wakeup bytes).
1284*c9ccf3a3SEmmanuel Vadot		 */
1285*c9ccf3a3SEmmanuel Vadot		bias-pull-down;
1286*c9ccf3a3SEmmanuel Vadot	};
1287*c9ccf3a3SEmmanuel Vadot
1288*c9ccf3a3SEmmanuel Vadot	qup_uart7_sleep_rx: qup-uart7-sleep-rx {
1289*c9ccf3a3SEmmanuel Vadot		pins = "gpio31";
1290*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1291*c9ccf3a3SEmmanuel Vadot		/*
1292*c9ccf3a3SEmmanuel Vadot		 * Configure a pull-up on RX. This is needed to avoid
1293*c9ccf3a3SEmmanuel Vadot		 * garbage data when the TX pin of the Bluetooth module
1294*c9ccf3a3SEmmanuel Vadot		 * is floating which may cause spurious wakeups.
1295*c9ccf3a3SEmmanuel Vadot		 */
1296*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1297*c9ccf3a3SEmmanuel Vadot	};
1298*c9ccf3a3SEmmanuel Vadot
1299*c9ccf3a3SEmmanuel Vadot	qup_uart7_sleep_tx: qup-uart7-sleep-tx {
1300*c9ccf3a3SEmmanuel Vadot		pins = "gpio30";
1301*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1302*c9ccf3a3SEmmanuel Vadot		/*
1303*c9ccf3a3SEmmanuel Vadot		 * Configure pull-up on TX when it isn't actively driven
1304*c9ccf3a3SEmmanuel Vadot		 * to prevent BT SoC from receiving garbage during sleep.
1305*c9ccf3a3SEmmanuel Vadot		 */
1306*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1307*c9ccf3a3SEmmanuel Vadot	};
1308*c9ccf3a3SEmmanuel Vadot
1309*c9ccf3a3SEmmanuel Vadot	sd_cd: sd-cd {
1310*c9ccf3a3SEmmanuel Vadot		pins = "gpio91";
1311*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1312*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1313*c9ccf3a3SEmmanuel Vadot	};
1314*c9ccf3a3SEmmanuel Vadot
1315*c9ccf3a3SEmmanuel Vadot	tp_int_odl: tp-int-odl {
1316*c9ccf3a3SEmmanuel Vadot		pins = "gpio102";
1317*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1318*c9ccf3a3SEmmanuel Vadot		/* Has external pullup */
1319*c9ccf3a3SEmmanuel Vadot		bias-disable;
1320*c9ccf3a3SEmmanuel Vadot	};
1321*c9ccf3a3SEmmanuel Vadot
1322*c9ccf3a3SEmmanuel Vadot	ts_int_l: ts-int-l {
1323*c9ccf3a3SEmmanuel Vadot		pins = "gpio81";
1324*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1325*c9ccf3a3SEmmanuel Vadot		/* Has external pullup */
1326*c9ccf3a3SEmmanuel Vadot		bias-pull-up;
1327*c9ccf3a3SEmmanuel Vadot	};
1328*c9ccf3a3SEmmanuel Vadot
1329*c9ccf3a3SEmmanuel Vadot	ts_reset_l: ts-reset-l {
1330*c9ccf3a3SEmmanuel Vadot		pins = "gpio105";
1331*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1332*c9ccf3a3SEmmanuel Vadot		/* Has external pullup */
1333*c9ccf3a3SEmmanuel Vadot		bias-disable;
1334*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1335*c9ccf3a3SEmmanuel Vadot	};
1336*c9ccf3a3SEmmanuel Vadot
1337*c9ccf3a3SEmmanuel Vadot	uf_cam_en: uf-cam-en {
1338*c9ccf3a3SEmmanuel Vadot		pins = "gpio6";
1339*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1340*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1341*c9ccf3a3SEmmanuel Vadot		/* Has external pulldown */
1342*c9ccf3a3SEmmanuel Vadot		bias-disable;
1343*c9ccf3a3SEmmanuel Vadot	};
1344*c9ccf3a3SEmmanuel Vadot
1345*c9ccf3a3SEmmanuel Vadot	wf_cam_en: wf-cam-en {
1346*c9ccf3a3SEmmanuel Vadot		pins = "gpio7";
1347*c9ccf3a3SEmmanuel Vadot		function = "gpio";
1348*c9ccf3a3SEmmanuel Vadot		drive-strength = <2>;
1349*c9ccf3a3SEmmanuel Vadot		/* Has external pulldown */
1350*c9ccf3a3SEmmanuel Vadot		bias-disable;
1351*c9ccf3a3SEmmanuel Vadot	};
1352*c9ccf3a3SEmmanuel Vadot};
1353