1*273a3dc1SBryan O'Donoghue// SPDX-License-Identifier: GPL-2.0
2*273a3dc1SBryan O'Donoghue/*
3*273a3dc1SBryan O'Donoghue * Copyright (c) 2015, The Linux Foundation. All rights reserved.
4*273a3dc1SBryan O'Donoghue * Copyright (c) 2020-2023, Linaro Ltd.
5*273a3dc1SBryan O'Donoghue *
6*273a3dc1SBryan O'Donoghue */
7*273a3dc1SBryan O'Donoghue
8*273a3dc1SBryan O'Donoghue/dts-v1/;
9*273a3dc1SBryan O'Donoghue
10*273a3dc1SBryan O'Donoghue#include "msm8939.dtsi"
11*273a3dc1SBryan O'Donoghue#include "msm8939-pm8916.dtsi"
12*273a3dc1SBryan O'Donoghue#include <dt-bindings/arm/qcom,ids.h>
13*273a3dc1SBryan O'Donoghue#include <dt-bindings/gpio/gpio.h>
14*273a3dc1SBryan O'Donoghue#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
15*273a3dc1SBryan O'Donoghue#include <dt-bindings/sound/apq8016-lpass.h>
16*273a3dc1SBryan O'Donoghue
17*273a3dc1SBryan O'Donoghue/ {
18*273a3dc1SBryan O'Donoghue	model = "Square, Inc. T2 Devkit";
19*273a3dc1SBryan O'Donoghue	compatible = "square,apq8039-t2", "qcom,msm8939";
20*273a3dc1SBryan O'Donoghue
21*273a3dc1SBryan O'Donoghue	qcom,board-id = <0x53 0x54>;
22*273a3dc1SBryan O'Donoghue	qcom,msm-id = <QCOM_ID_APQ8039 0x30000>;
23*273a3dc1SBryan O'Donoghue
24*273a3dc1SBryan O'Donoghue	aliases {
25*273a3dc1SBryan O'Donoghue		mmc0 = &sdhc_1;
26*273a3dc1SBryan O'Donoghue		mmc1 = &sdhc_2;
27*273a3dc1SBryan O'Donoghue		serial0 = &blsp1_uart1;
28*273a3dc1SBryan O'Donoghue		serial1 = &blsp1_uart2;
29*273a3dc1SBryan O'Donoghue	};
30*273a3dc1SBryan O'Donoghue
31*273a3dc1SBryan O'Donoghue	bl: backlight {
32*273a3dc1SBryan O'Donoghue		compatible = "gpio-backlight";
33*273a3dc1SBryan O'Donoghue		pinctrl-0 = <&pinctrl_backlight>;
34*273a3dc1SBryan O'Donoghue		pinctrl-names = "default";
35*273a3dc1SBryan O'Donoghue		gpios = <&tlmm 98 GPIO_ACTIVE_HIGH>;
36*273a3dc1SBryan O'Donoghue	};
37*273a3dc1SBryan O'Donoghue
38*273a3dc1SBryan O'Donoghue	chosen {
39*273a3dc1SBryan O'Donoghue		stdout-path = "serial1:115200n8";
40*273a3dc1SBryan O'Donoghue	};
41*273a3dc1SBryan O'Donoghue
42*273a3dc1SBryan O'Donoghue	vreg_lcd_avdd_reg: lcd-avdd-regulator {
43*273a3dc1SBryan O'Donoghue		compatible = "regulator-fixed";
44*273a3dc1SBryan O'Donoghue		regulator-name = "lcd_avdd";
45*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <5600000>;
46*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <5600000>;
47*273a3dc1SBryan O'Donoghue		pinctrl-0 = <&pinctrl_lcd_avdd_reg>;
48*273a3dc1SBryan O'Donoghue		pinctrl-names = "default";
49*273a3dc1SBryan O'Donoghue		gpio = <&tlmm 86 GPIO_ACTIVE_HIGH>;
50*273a3dc1SBryan O'Donoghue		startup-delay-us = <300>;
51*273a3dc1SBryan O'Donoghue		enable-active-high;
52*273a3dc1SBryan O'Donoghue	};
53*273a3dc1SBryan O'Donoghue
54*273a3dc1SBryan O'Donoghue	vreg_lcd_avee_reg: lcd-avee-regulator {
55*273a3dc1SBryan O'Donoghue		compatible = "regulator-fixed";
56*273a3dc1SBryan O'Donoghue		regulator-name = "lcd_avee";
57*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <5600000>;
58*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <5600000>;
59*273a3dc1SBryan O'Donoghue		pinctrl-0 = <&pinctrl_lcd_avee_reg>;
60*273a3dc1SBryan O'Donoghue		pinctrl-names = "default";
61*273a3dc1SBryan O'Donoghue		gpio = <&tlmm 87 GPIO_ACTIVE_HIGH>;
62*273a3dc1SBryan O'Donoghue		startup-delay-us = <300>;
63*273a3dc1SBryan O'Donoghue		enable-active-high;
64*273a3dc1SBryan O'Donoghue	};
65*273a3dc1SBryan O'Donoghue
66*273a3dc1SBryan O'Donoghue	vreg_lcd_iovcc_reg: lcd-iovcc-regulator {
67*273a3dc1SBryan O'Donoghue		compatible = "regulator-fixed";
68*273a3dc1SBryan O'Donoghue		regulator-name = "lcd_iovcc";
69*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
70*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <1800000>;
71*273a3dc1SBryan O'Donoghue		pinctrl-0 = <&pinctrl_lcd_iovcc_reg>;
72*273a3dc1SBryan O'Donoghue		pinctrl-names = "default";
73*273a3dc1SBryan O'Donoghue		gpio = <&tlmm 9 GPIO_ACTIVE_HIGH>;
74*273a3dc1SBryan O'Donoghue		startup-delay-us = <300>;
75*273a3dc1SBryan O'Donoghue		enable-active-high;
76*273a3dc1SBryan O'Donoghue	};
77*273a3dc1SBryan O'Donoghue};
78*273a3dc1SBryan O'Donoghue
79*273a3dc1SBryan O'Donoghue&blsp_i2c1 {
80*273a3dc1SBryan O'Donoghue	status = "okay";
81*273a3dc1SBryan O'Donoghue};
82*273a3dc1SBryan O'Donoghue
83*273a3dc1SBryan O'Donoghue&blsp_i2c2 {
84*273a3dc1SBryan O'Donoghue	status = "okay";
85*273a3dc1SBryan O'Donoghue};
86*273a3dc1SBryan O'Donoghue
87*273a3dc1SBryan O'Donoghue&blsp_i2c3 {
88*273a3dc1SBryan O'Donoghue	status = "okay";
89*273a3dc1SBryan O'Donoghue
90*273a3dc1SBryan O'Donoghue	typec_pd: usb-pd@38 {
91*273a3dc1SBryan O'Donoghue		compatible = "ti,tps6598x";
92*273a3dc1SBryan O'Donoghue		reg = <0x38>;
93*273a3dc1SBryan O'Donoghue
94*273a3dc1SBryan O'Donoghue		interrupt-parent = <&tlmm>;
95*273a3dc1SBryan O'Donoghue		interrupts = <107 IRQ_TYPE_LEVEL_LOW>;
96*273a3dc1SBryan O'Donoghue		interrupt-names = "irq";
97*273a3dc1SBryan O'Donoghue
98*273a3dc1SBryan O'Donoghue		pinctrl-names = "default";
99*273a3dc1SBryan O'Donoghue		pinctrl-0 = <&typec_irq>;
100*273a3dc1SBryan O'Donoghue
101*273a3dc1SBryan O'Donoghue		typec_con: connector {
102*273a3dc1SBryan O'Donoghue			compatible = "usb-c-connector";
103*273a3dc1SBryan O'Donoghue			label = "USB-C";
104*273a3dc1SBryan O'Donoghue
105*273a3dc1SBryan O'Donoghue			port {
106*273a3dc1SBryan O'Donoghue				typec_ep: endpoint {
107*273a3dc1SBryan O'Donoghue					remote-endpoint = <&otg_ep>;
108*273a3dc1SBryan O'Donoghue				};
109*273a3dc1SBryan O'Donoghue			};
110*273a3dc1SBryan O'Donoghue		};
111*273a3dc1SBryan O'Donoghue	};
112*273a3dc1SBryan O'Donoghue};
113*273a3dc1SBryan O'Donoghue
114*273a3dc1SBryan O'Donoghue&blsp_i2c5 {
115*273a3dc1SBryan O'Donoghue	status = "okay";
116*273a3dc1SBryan O'Donoghue};
117*273a3dc1SBryan O'Donoghue
118*273a3dc1SBryan O'Donoghue&blsp1_uart1 {
119*273a3dc1SBryan O'Donoghue	status = "okay";
120*273a3dc1SBryan O'Donoghue};
121*273a3dc1SBryan O'Donoghue
122*273a3dc1SBryan O'Donoghue&blsp1_uart1_default {
123*273a3dc1SBryan O'Donoghue	pins = "gpio0", "gpio1";
124*273a3dc1SBryan O'Donoghue};
125*273a3dc1SBryan O'Donoghue
126*273a3dc1SBryan O'Donoghue&blsp1_uart1_sleep {
127*273a3dc1SBryan O'Donoghue	pins = "gpio0", "gpio1";
128*273a3dc1SBryan O'Donoghue};
129*273a3dc1SBryan O'Donoghue
130*273a3dc1SBryan O'Donoghue&blsp1_uart2 {
131*273a3dc1SBryan O'Donoghue	status = "okay";
132*273a3dc1SBryan O'Donoghue};
133*273a3dc1SBryan O'Donoghue
134*273a3dc1SBryan O'Donoghue&lpass {
135*273a3dc1SBryan O'Donoghue	status = "okay";
136*273a3dc1SBryan O'Donoghue};
137*273a3dc1SBryan O'Donoghue
138*273a3dc1SBryan O'Donoghue&mdss {
139*273a3dc1SBryan O'Donoghue	status = "okay";
140*273a3dc1SBryan O'Donoghue};
141*273a3dc1SBryan O'Donoghue
142*273a3dc1SBryan O'Donoghue&pm8916_gpios {
143*273a3dc1SBryan O'Donoghue	gpio-line-names =
144*273a3dc1SBryan O'Donoghue		"PM_GPIO1",     /* WIFI_GPIO1_PRE */
145*273a3dc1SBryan O'Donoghue		"PM_GPIO2",     /* WIFI_GPIO2_PRE */
146*273a3dc1SBryan O'Donoghue		"PM_GPIO3",
147*273a3dc1SBryan O'Donoghue		"PM_GPIO4";
148*273a3dc1SBryan O'Donoghue};
149*273a3dc1SBryan O'Donoghue
150*273a3dc1SBryan O'Donoghue&smd_rpm_regulators {
151*273a3dc1SBryan O'Donoghue	vdd_l1_l2_l3-supply = <&pm8916_s3>;
152*273a3dc1SBryan O'Donoghue	vdd_l4_l5_l6-supply = <&pm8916_s4>;
153*273a3dc1SBryan O'Donoghue	vdd_l7-supply = <&pm8916_s4>;
154*273a3dc1SBryan O'Donoghue
155*273a3dc1SBryan O'Donoghue	pm8916_s3: s3 {
156*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1200000>;
157*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <1300000>;
158*273a3dc1SBryan O'Donoghue	};
159*273a3dc1SBryan O'Donoghue
160*273a3dc1SBryan O'Donoghue	pm8916_s4: s4 {
161*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
162*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <2100000>;
163*273a3dc1SBryan O'Donoghue	};
164*273a3dc1SBryan O'Donoghue
165*273a3dc1SBryan O'Donoghue	/* l1 is fixed to 1225000, but not connected in schematic */
166*273a3dc1SBryan O'Donoghue
167*273a3dc1SBryan O'Donoghue	pm8916_l2: l2 {
168*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1200000>;
169*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <1200000>;
170*273a3dc1SBryan O'Donoghue	};
171*273a3dc1SBryan O'Donoghue
172*273a3dc1SBryan O'Donoghue	pm8916_l4: l4 {
173*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <2050000>;
174*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <2050000>;
175*273a3dc1SBryan O'Donoghue	};
176*273a3dc1SBryan O'Donoghue
177*273a3dc1SBryan O'Donoghue	pm8916_l5: l5 {
178*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
179*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <1800000>;
180*273a3dc1SBryan O'Donoghue	};
181*273a3dc1SBryan O'Donoghue
182*273a3dc1SBryan O'Donoghue	pm8916_l6: l6 {
183*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
184*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <1800000>;
185*273a3dc1SBryan O'Donoghue	};
186*273a3dc1SBryan O'Donoghue
187*273a3dc1SBryan O'Donoghue	pm8916_l7: l7 {
188*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
189*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <1800000>;
190*273a3dc1SBryan O'Donoghue	};
191*273a3dc1SBryan O'Donoghue
192*273a3dc1SBryan O'Donoghue	pm8916_l8: l8 {
193*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <2850000>;
194*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <2900000>;
195*273a3dc1SBryan O'Donoghue	};
196*273a3dc1SBryan O'Donoghue
197*273a3dc1SBryan O'Donoghue	pm8916_l9: l9 {
198*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <3300000>;
199*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <3300000>;
200*273a3dc1SBryan O'Donoghue	};
201*273a3dc1SBryan O'Donoghue
202*273a3dc1SBryan O'Donoghue	pm8916_l10: l10 {
203*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <3300000>;
204*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <3300000>;
205*273a3dc1SBryan O'Donoghue	};
206*273a3dc1SBryan O'Donoghue
207*273a3dc1SBryan O'Donoghue	pm8916_l11: l11 {
208*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
209*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <2950000>;
210*273a3dc1SBryan O'Donoghue	};
211*273a3dc1SBryan O'Donoghue
212*273a3dc1SBryan O'Donoghue	pm8916_l12: l12 {
213*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
214*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <2950000>;
215*273a3dc1SBryan O'Donoghue	};
216*273a3dc1SBryan O'Donoghue
217*273a3dc1SBryan O'Donoghue	pm8916_l13: l13 {
218*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <3075000>;
219*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <3075000>;
220*273a3dc1SBryan O'Donoghue	};
221*273a3dc1SBryan O'Donoghue
222*273a3dc1SBryan O'Donoghue	pm8916_l14: l14 {
223*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
224*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <3300000>;
225*273a3dc1SBryan O'Donoghue	};
226*273a3dc1SBryan O'Donoghue
227*273a3dc1SBryan O'Donoghue	pm8916_l15: l15 {
228*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
229*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <3300000>;
230*273a3dc1SBryan O'Donoghue	};
231*273a3dc1SBryan O'Donoghue
232*273a3dc1SBryan O'Donoghue	pm8916_l16: l16 {
233*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <1800000>;
234*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <3300000>;
235*273a3dc1SBryan O'Donoghue	};
236*273a3dc1SBryan O'Donoghue
237*273a3dc1SBryan O'Donoghue	pm8916_l17: l17 {
238*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <2850000>;
239*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <2850000>;
240*273a3dc1SBryan O'Donoghue	};
241*273a3dc1SBryan O'Donoghue
242*273a3dc1SBryan O'Donoghue	pm8916_l18: l18 {
243*273a3dc1SBryan O'Donoghue		regulator-min-microvolt = <2700000>;
244*273a3dc1SBryan O'Donoghue		regulator-max-microvolt = <2700000>;
245*273a3dc1SBryan O'Donoghue	};
246*273a3dc1SBryan O'Donoghue};
247*273a3dc1SBryan O'Donoghue
248*273a3dc1SBryan O'Donoghue&sdhc_1 {
249*273a3dc1SBryan O'Donoghue	pinctrl-names = "default", "sleep";
250*273a3dc1SBryan O'Donoghue	pinctrl-0 = <&sdc1_default_state>;
251*273a3dc1SBryan O'Donoghue	pinctrl-1 = <&sdc1_sleep_state>;
252*273a3dc1SBryan O'Donoghue	status = "okay";
253*273a3dc1SBryan O'Donoghue};
254*273a3dc1SBryan O'Donoghue
255*273a3dc1SBryan O'Donoghue&sound {
256*273a3dc1SBryan O'Donoghue	model = "apq8039-square-sndcard";
257*273a3dc1SBryan O'Donoghue	audio-routing = "AMIC2", "MIC BIAS Internal2";
258*273a3dc1SBryan O'Donoghue	pinctrl-names = "default", "sleep";
259*273a3dc1SBryan O'Donoghue	pinctrl-0 = <&cdc_pdm_lines_default>;
260*273a3dc1SBryan O'Donoghue	pinctrl-1 = <&cdc_pdm_lines_sleep>;
261*273a3dc1SBryan O'Donoghue
262*273a3dc1SBryan O'Donoghue	internal-codec-playback-dai-link {
263*273a3dc1SBryan O'Donoghue		link-name = "WCD";
264*273a3dc1SBryan O'Donoghue		cpu {
265*273a3dc1SBryan O'Donoghue			sound-dai = <&lpass MI2S_PRIMARY>;
266*273a3dc1SBryan O'Donoghue		};
267*273a3dc1SBryan O'Donoghue		codec {
268*273a3dc1SBryan O'Donoghue			sound-dai = <&lpass_codec 0>, <&wcd_codec 0>;
269*273a3dc1SBryan O'Donoghue		};
270*273a3dc1SBryan O'Donoghue	};
271*273a3dc1SBryan O'Donoghue
272*273a3dc1SBryan O'Donoghue	internal-codec-capture-dai-link {
273*273a3dc1SBryan O'Donoghue		link-name = "WCD-Capture";
274*273a3dc1SBryan O'Donoghue		cpu {
275*273a3dc1SBryan O'Donoghue			sound-dai = <&lpass MI2S_TERTIARY>;
276*273a3dc1SBryan O'Donoghue		};
277*273a3dc1SBryan O'Donoghue		codec {
278*273a3dc1SBryan O'Donoghue			sound-dai = <&lpass_codec 1>, <&wcd_codec 1>;
279*273a3dc1SBryan O'Donoghue		};
280*273a3dc1SBryan O'Donoghue	};
281*273a3dc1SBryan O'Donoghue};
282*273a3dc1SBryan O'Donoghue
283*273a3dc1SBryan O'Donoghue/*
284*273a3dc1SBryan O'Donoghue * Line names are taken from the schematic of T2, Ver X03.
285*273a3dc1SBryan O'Donoghue * July 14, 2018. Page 4 in particular.
286*273a3dc1SBryan O'Donoghue */
287*273a3dc1SBryan O'Donoghue&tlmm {
288*273a3dc1SBryan O'Donoghue	gpio-line-names =
289*273a3dc1SBryan O'Donoghue		"APQ_UART1_TX",		/* GPIO_0 */
290*273a3dc1SBryan O'Donoghue		"APQ_UART1_RX",
291*273a3dc1SBryan O'Donoghue		"APQ_I2C1_SDA",
292*273a3dc1SBryan O'Donoghue		"APQ_I2C1_SCL",
293*273a3dc1SBryan O'Donoghue		"APQ_UART2_TX_1V8",
294*273a3dc1SBryan O'Donoghue		"APQ_UART2_RX_1V8",
295*273a3dc1SBryan O'Donoghue		"APQ_I2C2_SDA",
296*273a3dc1SBryan O'Donoghue		"APQ_I2C2_SCL",
297*273a3dc1SBryan O'Donoghue		"NC",
298*273a3dc1SBryan O'Donoghue		"APQ_LCD_IOVCC_EN",
299*273a3dc1SBryan O'Donoghue		"APQ_I2C3_SDA",		/* GPIO_10 */
300*273a3dc1SBryan O'Donoghue		"APQ_I2C3_SCL",
301*273a3dc1SBryan O'Donoghue		"TOUCH_RST_1V8_L",
302*273a3dc1SBryan O'Donoghue		"NC",
303*273a3dc1SBryan O'Donoghue		"APQ_I2C4_SDA",
304*273a3dc1SBryan O'Donoghue		"APQ_I2C4_SCL",
305*273a3dc1SBryan O'Donoghue		"APQ_ID5",
306*273a3dc1SBryan O'Donoghue		"USB_DISCONNECT",
307*273a3dc1SBryan O'Donoghue		"APQ_I2C5_SDA",
308*273a3dc1SBryan O'Donoghue		"APQ_I2C5_SCL",
309*273a3dc1SBryan O'Donoghue		"APQ_USBC_SPI_MOSI",	/* GPIO_20 */
310*273a3dc1SBryan O'Donoghue		"APQ_USBC_SPI_MISO",
311*273a3dc1SBryan O'Donoghue		"APQ_USBC_SPI_SS_L",
312*273a3dc1SBryan O'Donoghue		"APQ_USBC_SPI_CLK",
313*273a3dc1SBryan O'Donoghue		"APQ_LCD_TE0",
314*273a3dc1SBryan O'Donoghue		"APQ_LCD_RST_L",
315*273a3dc1SBryan O'Donoghue		"NC",
316*273a3dc1SBryan O'Donoghue		"NC",
317*273a3dc1SBryan O'Donoghue		"ACCELEROMETER_INT1",
318*273a3dc1SBryan O'Donoghue		"APQ_CAM_I2C0_SDA",
319*273a3dc1SBryan O'Donoghue		"APQ_CAM_I2C0_SCL",	/* GPIO_30 */
320*273a3dc1SBryan O'Donoghue		"ACCELEROMETER_INT2",
321*273a3dc1SBryan O'Donoghue		"NC",
322*273a3dc1SBryan O'Donoghue		"NC",
323*273a3dc1SBryan O'Donoghue		"NC",
324*273a3dc1SBryan O'Donoghue		"APQ_K21_RST_1V8_L",
325*273a3dc1SBryan O'Donoghue		"NC",
326*273a3dc1SBryan O'Donoghue		"APQ_EDL_1V8",
327*273a3dc1SBryan O'Donoghue		"TP145",
328*273a3dc1SBryan O'Donoghue		"BT_SSBI",
329*273a3dc1SBryan O'Donoghue		"NC",			/* GPIO_40 */
330*273a3dc1SBryan O'Donoghue		"NC",
331*273a3dc1SBryan O'Donoghue		"NC",
332*273a3dc1SBryan O'Donoghue		"NC",
333*273a3dc1SBryan O'Donoghue		"NC",
334*273a3dc1SBryan O'Donoghue		"NC",
335*273a3dc1SBryan O'Donoghue		"NC",
336*273a3dc1SBryan O'Donoghue		"BT_CTRL",
337*273a3dc1SBryan O'Donoghue		"BT_DAT",
338*273a3dc1SBryan O'Donoghue		"PWR_GPIO_IN",
339*273a3dc1SBryan O'Donoghue		"PWR_GPIO_OUT",		/* GPIO_50 */
340*273a3dc1SBryan O'Donoghue		"CARD_DET_MLB_L",
341*273a3dc1SBryan O'Donoghue		"HALL_SENSOR",
342*273a3dc1SBryan O'Donoghue		"TP63",
343*273a3dc1SBryan O'Donoghue		"TP64",
344*273a3dc1SBryan O'Donoghue		"TP65",
345*273a3dc1SBryan O'Donoghue		"NC",
346*273a3dc1SBryan O'Donoghue		"NC",
347*273a3dc1SBryan O'Donoghue		"NC",
348*273a3dc1SBryan O'Donoghue		"NC",
349*273a3dc1SBryan O'Donoghue		"NC",			/* GPIO_60 */
350*273a3dc1SBryan O'Donoghue		"NC",
351*273a3dc1SBryan O'Donoghue		"APQ_K21_GPIO0_1V8",
352*273a3dc1SBryan O'Donoghue		"CDC_PDM_CLK",
353*273a3dc1SBryan O'Donoghue		"CDC_PDM_SYNC",
354*273a3dc1SBryan O'Donoghue		"CDC_PDM_TX",
355*273a3dc1SBryan O'Donoghue		"CDC_PDM_RX0",
356*273a3dc1SBryan O'Donoghue		"CDC_PDM_RX1",
357*273a3dc1SBryan O'Donoghue		"CDC_PDM_RX2",
358*273a3dc1SBryan O'Donoghue		"APQ_K21_GPIO1_1V8",
359*273a3dc1SBryan O'Donoghue		"NC",			/* GPIO_70 */
360*273a3dc1SBryan O'Donoghue		"APQ_HUB_SEL_1V8",
361*273a3dc1SBryan O'Donoghue		"APQ_K21_GPIO2_1V8",
362*273a3dc1SBryan O'Donoghue		"APQ_K21_GPIO3_1V8",
363*273a3dc1SBryan O'Donoghue		"APQ_ID0",
364*273a3dc1SBryan O'Donoghue		"APQ_ID1",
365*273a3dc1SBryan O'Donoghue		"APQ_ID2",
366*273a3dc1SBryan O'Donoghue		"APQ_ID3",
367*273a3dc1SBryan O'Donoghue		"APQ_ID4",
368*273a3dc1SBryan O'Donoghue		"APQ_HUB_SUSP_IND",
369*273a3dc1SBryan O'Donoghue		"BOOT_CONFIG_0",	/* GPIO_80 */
370*273a3dc1SBryan O'Donoghue		"BOOT_CONFIG_1",
371*273a3dc1SBryan O'Donoghue		"BOOT_CONFIG_2",
372*273a3dc1SBryan O'Donoghue		"BOOT_CONFIG_3",
373*273a3dc1SBryan O'Donoghue		"NC",
374*273a3dc1SBryan O'Donoghue		"NC",
375*273a3dc1SBryan O'Donoghue		"APQ_LCD_AVDD_EN",
376*273a3dc1SBryan O'Donoghue		"APQ_LCD_AVEE_EN",
377*273a3dc1SBryan O'Donoghue		"TP70",
378*273a3dc1SBryan O'Donoghue		"NC",
379*273a3dc1SBryan O'Donoghue		"APQ_DEBUG0",		/* GPIO_90 */
380*273a3dc1SBryan O'Donoghue		"APQ_DEBUG1",
381*273a3dc1SBryan O'Donoghue		"APQ_DEBUG2",
382*273a3dc1SBryan O'Donoghue		"APQ_DEBUG3",
383*273a3dc1SBryan O'Donoghue		"TP165",
384*273a3dc1SBryan O'Donoghue		"NC",
385*273a3dc1SBryan O'Donoghue		"APQ_LNA_PWR_EN",
386*273a3dc1SBryan O'Donoghue		"NC",
387*273a3dc1SBryan O'Donoghue		"APQ_LCD_BL_EN",
388*273a3dc1SBryan O'Donoghue		"NC",
389*273a3dc1SBryan O'Donoghue		"APQ_LCD_ID0",		/* GPIO_100 */
390*273a3dc1SBryan O'Donoghue		"APQ_LCD_ID1",
391*273a3dc1SBryan O'Donoghue		"USBC_GPIO5_1V8",
392*273a3dc1SBryan O'Donoghue		"NC",
393*273a3dc1SBryan O'Donoghue		"NC",
394*273a3dc1SBryan O'Donoghue		"NC",
395*273a3dc1SBryan O'Donoghue		"APQ_HUB_RST_1V8_L",
396*273a3dc1SBryan O'Donoghue		"USBC_I2C_IRQ_1V8_L",
397*273a3dc1SBryan O'Donoghue		"SPE_PWR_EN",
398*273a3dc1SBryan O'Donoghue		"NC",
399*273a3dc1SBryan O'Donoghue		"APQ_USB_ID",		/* GPIO_110 */
400*273a3dc1SBryan O'Donoghue		"APQ_EXT_BUCK_VSEL",
401*273a3dc1SBryan O'Donoghue		"APQ_USB_ID_OUT",
402*273a3dc1SBryan O'Donoghue		"NC",
403*273a3dc1SBryan O'Donoghue		"PRNT_RST_L",
404*273a3dc1SBryan O'Donoghue		"APQ_CRQ_I2C_RDY_1V8",
405*273a3dc1SBryan O'Donoghue		"TYPEC_RST_1V8_H",
406*273a3dc1SBryan O'Donoghue		"CHG_BACKPWR_EN",
407*273a3dc1SBryan O'Donoghue		"CHG_PROCHOT_L",
408*273a3dc1SBryan O'Donoghue		"NC",
409*273a3dc1SBryan O'Donoghue		"USBC_GPIO7_1V8",	/* GPIO_120 */
410*273a3dc1SBryan O'Donoghue		"NC";
411*273a3dc1SBryan O'Donoghue
412*273a3dc1SBryan O'Donoghue	pinctrl_backlight: backlight-state {
413*273a3dc1SBryan O'Donoghue		pins = "gpio98";
414*273a3dc1SBryan O'Donoghue		function = "gpio";
415*273a3dc1SBryan O'Donoghue	};
416*273a3dc1SBryan O'Donoghue
417*273a3dc1SBryan O'Donoghue	pinctrl_lcd_avdd_reg: lcd-avdd-reg-state {
418*273a3dc1SBryan O'Donoghue		pins = "gpio86";
419*273a3dc1SBryan O'Donoghue		function = "gpio";
420*273a3dc1SBryan O'Donoghue	};
421*273a3dc1SBryan O'Donoghue
422*273a3dc1SBryan O'Donoghue	pinctrl_lcd_avee_reg: lcd-avee-reg-state {
423*273a3dc1SBryan O'Donoghue		pins = "gpio87";
424*273a3dc1SBryan O'Donoghue		function = "gpio";
425*273a3dc1SBryan O'Donoghue	};
426*273a3dc1SBryan O'Donoghue
427*273a3dc1SBryan O'Donoghue	pinctrl_lcd_iovcc_reg: lcd-iovcc-reg-state {
428*273a3dc1SBryan O'Donoghue		pins = "gpio9";
429*273a3dc1SBryan O'Donoghue		function = "gpio";
430*273a3dc1SBryan O'Donoghue	};
431*273a3dc1SBryan O'Donoghue
432*273a3dc1SBryan O'Donoghue	pinctrl_lcd_rst: lcd-rst-state {
433*273a3dc1SBryan O'Donoghue		pins = "gpio25";
434*273a3dc1SBryan O'Donoghue		function = "gpio";
435*273a3dc1SBryan O'Donoghue	};
436*273a3dc1SBryan O'Donoghue
437*273a3dc1SBryan O'Donoghue	pinctrl_otg_default: otg-default-state {
438*273a3dc1SBryan O'Donoghue		function = "gpio";
439*273a3dc1SBryan O'Donoghue		pins = "gpio17";
440*273a3dc1SBryan O'Donoghue		output-high;
441*273a3dc1SBryan O'Donoghue	};
442*273a3dc1SBryan O'Donoghue
443*273a3dc1SBryan O'Donoghue	pinctrl_otg_device: otg-device-state {
444*273a3dc1SBryan O'Donoghue		function = "gpio";
445*273a3dc1SBryan O'Donoghue		pins = "gpio17";
446*273a3dc1SBryan O'Donoghue		output-low;
447*273a3dc1SBryan O'Donoghue	};
448*273a3dc1SBryan O'Donoghue
449*273a3dc1SBryan O'Donoghue	pinctrl_otg_host: otg-host-state {
450*273a3dc1SBryan O'Donoghue		function = "gpio";
451*273a3dc1SBryan O'Donoghue		pins = "gpio17";
452*273a3dc1SBryan O'Donoghue		output-low;
453*273a3dc1SBryan O'Donoghue	};
454*273a3dc1SBryan O'Donoghue
455*273a3dc1SBryan O'Donoghue	typec_irq: typec-irq-state {
456*273a3dc1SBryan O'Donoghue		function = "gpio";
457*273a3dc1SBryan O'Donoghue		pins = "gpio107";
458*273a3dc1SBryan O'Donoghue		bias-pull-up;
459*273a3dc1SBryan O'Donoghue		input-enable;
460*273a3dc1SBryan O'Donoghue	};
461*273a3dc1SBryan O'Donoghue};
462*273a3dc1SBryan O'Donoghue
463*273a3dc1SBryan O'Donoghue&usb {
464*273a3dc1SBryan O'Donoghue	pinctrl-names = "default", "host", "device";
465*273a3dc1SBryan O'Donoghue	pinctrl-0 = <&pinctrl_otg_default>;
466*273a3dc1SBryan O'Donoghue	pinctrl-1 = <&pinctrl_otg_host>;
467*273a3dc1SBryan O'Donoghue	pinctrl-2 = <&pinctrl_otg_device>;
468*273a3dc1SBryan O'Donoghue	pin-switch-delay-us = <100000>;
469*273a3dc1SBryan O'Donoghue	usb-role-switch;
470*273a3dc1SBryan O'Donoghue	status = "okay";
471*273a3dc1SBryan O'Donoghue
472*273a3dc1SBryan O'Donoghue	port {
473*273a3dc1SBryan O'Donoghue		otg_ep: endpoint {
474*273a3dc1SBryan O'Donoghue			remote-endpoint = <&typec_ep>;
475*273a3dc1SBryan O'Donoghue		};
476*273a3dc1SBryan O'Donoghue	};
477*273a3dc1SBryan O'Donoghue};
478*273a3dc1SBryan O'Donoghue
479*273a3dc1SBryan O'Donoghue&wcd_codec {
480*273a3dc1SBryan O'Donoghue	qcom,hphl-jack-type-normally-open;
481*273a3dc1SBryan O'Donoghue	qcom,mbhc-vthreshold-low = <75 150 237 450 500>;
482*273a3dc1SBryan O'Donoghue	qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
483*273a3dc1SBryan O'Donoghue	status = "okay";
484*273a3dc1SBryan O'Donoghue};
485*273a3dc1SBryan O'Donoghue
486*273a3dc1SBryan O'Donoghue&wcnss {
487*273a3dc1SBryan O'Donoghue	status = "okay";
488*273a3dc1SBryan O'Donoghue};
489*273a3dc1SBryan O'Donoghue
490*273a3dc1SBryan O'Donoghue&wcnss_iris {
491*273a3dc1SBryan O'Donoghue	compatible = "qcom,wcn3680";
492*273a3dc1SBryan O'Donoghue};
493