xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/hamoa-iot-evk.dts (revision 4f38da1f027ea2c9f01bb71daa7a299c191b6940)
1*c11645afSYijie Yang// SPDX-License-Identifier: BSD-3-Clause
2*c11645afSYijie Yang/*
3*c11645afSYijie Yang * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4*c11645afSYijie Yang */
5*c11645afSYijie Yang
6*c11645afSYijie Yang/dts-v1/;
7*c11645afSYijie Yang
8*c11645afSYijie Yang#include "hamoa-iot-som.dtsi"
9*c11645afSYijie Yang
10*c11645afSYijie Yang/ {
11*c11645afSYijie Yang	model = "Qualcomm Technologies, Inc. Hamoa IoT EVK";
12*c11645afSYijie Yang	compatible = "qcom,hamoa-iot-evk", "qcom,hamoa-iot-som", "qcom,x1e80100";
13*c11645afSYijie Yang	chassis-type = "embedded";
14*c11645afSYijie Yang
15*c11645afSYijie Yang	aliases {
16*c11645afSYijie Yang		serial0 = &uart21;
17*c11645afSYijie Yang		serial1 = &uart14;
18*c11645afSYijie Yang	};
19*c11645afSYijie Yang
20*c11645afSYijie Yang	wcd938x: audio-codec {
21*c11645afSYijie Yang		compatible = "qcom,wcd9385-codec";
22*c11645afSYijie Yang
23*c11645afSYijie Yang		pinctrl-0 = <&wcd_default>;
24*c11645afSYijie Yang		pinctrl-names = "default";
25*c11645afSYijie Yang
26*c11645afSYijie Yang		reset-gpios = <&tlmm 191 GPIO_ACTIVE_LOW>;
27*c11645afSYijie Yang
28*c11645afSYijie Yang		qcom,micbias1-microvolt = <1800000>;
29*c11645afSYijie Yang		qcom,micbias2-microvolt = <1800000>;
30*c11645afSYijie Yang		qcom,micbias3-microvolt = <1800000>;
31*c11645afSYijie Yang		qcom,micbias4-microvolt = <1800000>;
32*c11645afSYijie Yang		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000
33*c11645afSYijie Yang							 500000 500000 500000 500000>;
34*c11645afSYijie Yang		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
35*c11645afSYijie Yang		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
36*c11645afSYijie Yang		qcom,rx-device = <&wcd_rx>;
37*c11645afSYijie Yang		qcom,tx-device = <&wcd_tx>;
38*c11645afSYijie Yang
39*c11645afSYijie Yang		vdd-buck-supply = <&vreg_l15b_1p8>;
40*c11645afSYijie Yang		vdd-rxtx-supply = <&vreg_l15b_1p8>;
41*c11645afSYijie Yang		vdd-io-supply = <&vreg_l15b_1p8>;
42*c11645afSYijie Yang		vdd-mic-bias-supply = <&vreg_bob1>;
43*c11645afSYijie Yang
44*c11645afSYijie Yang		#sound-dai-cells = <1>;
45*c11645afSYijie Yang	};
46*c11645afSYijie Yang
47*c11645afSYijie Yang	chosen {
48*c11645afSYijie Yang		stdout-path = "serial0:115200n8";
49*c11645afSYijie Yang	};
50*c11645afSYijie Yang
51*c11645afSYijie Yang	pmic-glink {
52*c11645afSYijie Yang		compatible = "qcom,x1e80100-pmic-glink",
53*c11645afSYijie Yang			     "qcom,sm8550-pmic-glink",
54*c11645afSYijie Yang			     "qcom,pmic-glink";
55*c11645afSYijie Yang		#address-cells = <1>;
56*c11645afSYijie Yang		#size-cells = <0>;
57*c11645afSYijie Yang		orientation-gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>,
58*c11645afSYijie Yang				    <&tlmm 123 GPIO_ACTIVE_HIGH>,
59*c11645afSYijie Yang				    <&tlmm 125 GPIO_ACTIVE_HIGH>;
60*c11645afSYijie Yang
61*c11645afSYijie Yang		connector@0 {
62*c11645afSYijie Yang			compatible = "usb-c-connector";
63*c11645afSYijie Yang			reg = <0>;
64*c11645afSYijie Yang			power-role = "dual";
65*c11645afSYijie Yang			data-role = "dual";
66*c11645afSYijie Yang
67*c11645afSYijie Yang			ports {
68*c11645afSYijie Yang				#address-cells = <1>;
69*c11645afSYijie Yang				#size-cells = <0>;
70*c11645afSYijie Yang
71*c11645afSYijie Yang				port@0 {
72*c11645afSYijie Yang					reg = <0>;
73*c11645afSYijie Yang
74*c11645afSYijie Yang					pmic_glink_ss0_hs_in: endpoint {
75*c11645afSYijie Yang						remote-endpoint = <&usb_1_ss0_dwc3_hs>;
76*c11645afSYijie Yang					};
77*c11645afSYijie Yang				};
78*c11645afSYijie Yang
79*c11645afSYijie Yang				port@1 {
80*c11645afSYijie Yang					reg = <1>;
81*c11645afSYijie Yang
82*c11645afSYijie Yang					pmic_glink_ss0_ss_in: endpoint {
83*c11645afSYijie Yang						remote-endpoint = <&usb_1_ss0_qmpphy_out>;
84*c11645afSYijie Yang					};
85*c11645afSYijie Yang				};
86*c11645afSYijie Yang
87*c11645afSYijie Yang				port@2 {
88*c11645afSYijie Yang					reg = <2>;
89*c11645afSYijie Yang
90*c11645afSYijie Yang					pmic_glink_ss0_sbu: endpoint {
91*c11645afSYijie Yang						remote-endpoint = <&usb_1_ss0_sbu_mux>;
92*c11645afSYijie Yang					};
93*c11645afSYijie Yang				};
94*c11645afSYijie Yang			};
95*c11645afSYijie Yang		};
96*c11645afSYijie Yang
97*c11645afSYijie Yang		connector@1 {
98*c11645afSYijie Yang			compatible = "usb-c-connector";
99*c11645afSYijie Yang			reg = <1>;
100*c11645afSYijie Yang			power-role = "dual";
101*c11645afSYijie Yang			data-role = "dual";
102*c11645afSYijie Yang
103*c11645afSYijie Yang			ports {
104*c11645afSYijie Yang				#address-cells = <1>;
105*c11645afSYijie Yang				#size-cells = <0>;
106*c11645afSYijie Yang
107*c11645afSYijie Yang				port@0 {
108*c11645afSYijie Yang					reg = <0>;
109*c11645afSYijie Yang
110*c11645afSYijie Yang					pmic_glink_ss1_hs_in: endpoint {
111*c11645afSYijie Yang						remote-endpoint = <&usb_1_ss1_dwc3_hs>;
112*c11645afSYijie Yang					};
113*c11645afSYijie Yang				};
114*c11645afSYijie Yang
115*c11645afSYijie Yang				port@1 {
116*c11645afSYijie Yang					reg = <1>;
117*c11645afSYijie Yang
118*c11645afSYijie Yang					pmic_glink_ss1_ss_in: endpoint {
119*c11645afSYijie Yang						remote-endpoint = <&retimer_ss1_ss_out>;
120*c11645afSYijie Yang					};
121*c11645afSYijie Yang				};
122*c11645afSYijie Yang
123*c11645afSYijie Yang				port@2 {
124*c11645afSYijie Yang					reg = <2>;
125*c11645afSYijie Yang
126*c11645afSYijie Yang					pmic_glink_ss1_con_sbu_in: endpoint {
127*c11645afSYijie Yang						remote-endpoint = <&retimer_ss1_con_sbu_out>;
128*c11645afSYijie Yang					};
129*c11645afSYijie Yang				};
130*c11645afSYijie Yang			};
131*c11645afSYijie Yang		};
132*c11645afSYijie Yang
133*c11645afSYijie Yang		connector@2 {
134*c11645afSYijie Yang			compatible = "usb-c-connector";
135*c11645afSYijie Yang			reg = <2>;
136*c11645afSYijie Yang			power-role = "dual";
137*c11645afSYijie Yang			data-role = "dual";
138*c11645afSYijie Yang
139*c11645afSYijie Yang			ports {
140*c11645afSYijie Yang				#address-cells = <1>;
141*c11645afSYijie Yang				#size-cells = <0>;
142*c11645afSYijie Yang
143*c11645afSYijie Yang				port@0 {
144*c11645afSYijie Yang					reg = <0>;
145*c11645afSYijie Yang
146*c11645afSYijie Yang					pmic_glink_ss2_hs_in: endpoint {
147*c11645afSYijie Yang						remote-endpoint = <&usb_1_ss2_dwc3_hs>;
148*c11645afSYijie Yang					};
149*c11645afSYijie Yang				};
150*c11645afSYijie Yang
151*c11645afSYijie Yang				port@1 {
152*c11645afSYijie Yang					reg = <1>;
153*c11645afSYijie Yang
154*c11645afSYijie Yang					pmic_glink_ss2_ss_in: endpoint {
155*c11645afSYijie Yang						remote-endpoint = <&retimer_ss2_ss_out>;
156*c11645afSYijie Yang					};
157*c11645afSYijie Yang				};
158*c11645afSYijie Yang
159*c11645afSYijie Yang				port@2 {
160*c11645afSYijie Yang					reg = <2>;
161*c11645afSYijie Yang
162*c11645afSYijie Yang					pmic_glink_ss2_con_sbu_in: endpoint {
163*c11645afSYijie Yang						remote-endpoint = <&retimer_ss2_con_sbu_out>;
164*c11645afSYijie Yang					};
165*c11645afSYijie Yang				};
166*c11645afSYijie Yang			};
167*c11645afSYijie Yang		};
168*c11645afSYijie Yang	};
169*c11645afSYijie Yang
170*c11645afSYijie Yang	vreg_edp_3p3: regulator-edp-3p3 {
171*c11645afSYijie Yang		compatible = "regulator-fixed";
172*c11645afSYijie Yang
173*c11645afSYijie Yang		regulator-name = "VREG_EDP_3P3";
174*c11645afSYijie Yang		regulator-min-microvolt = <3300000>;
175*c11645afSYijie Yang		regulator-max-microvolt = <3300000>;
176*c11645afSYijie Yang
177*c11645afSYijie Yang		gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>;
178*c11645afSYijie Yang		enable-active-high;
179*c11645afSYijie Yang
180*c11645afSYijie Yang		pinctrl-0 = <&edp_reg_en>;
181*c11645afSYijie Yang		pinctrl-names = "default";
182*c11645afSYijie Yang
183*c11645afSYijie Yang		regulator-boot-on;
184*c11645afSYijie Yang	};
185*c11645afSYijie Yang
186*c11645afSYijie Yang	vreg_nvme: regulator-nvme {
187*c11645afSYijie Yang		compatible = "regulator-fixed";
188*c11645afSYijie Yang
189*c11645afSYijie Yang		regulator-name = "VREG_NVME_3P3";
190*c11645afSYijie Yang		regulator-min-microvolt = <3300000>;
191*c11645afSYijie Yang		regulator-max-microvolt = <3300000>;
192*c11645afSYijie Yang
193*c11645afSYijie Yang		gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>;
194*c11645afSYijie Yang		enable-active-high;
195*c11645afSYijie Yang
196*c11645afSYijie Yang		pinctrl-0 = <&nvme_reg_en>;
197*c11645afSYijie Yang		pinctrl-names = "default";
198*c11645afSYijie Yang
199*c11645afSYijie Yang		regulator-boot-on;
200*c11645afSYijie Yang	};
201*c11645afSYijie Yang
202*c11645afSYijie Yang	/* Left unused as the retimer is not used on this board. */
203*c11645afSYijie Yang	vreg_rtmr0_1p15: regulator-rtmr0-1p15 {
204*c11645afSYijie Yang		compatible = "regulator-fixed";
205*c11645afSYijie Yang
206*c11645afSYijie Yang		regulator-name = "VREG_RTMR0_1P15";
207*c11645afSYijie Yang		regulator-min-microvolt = <1150000>;
208*c11645afSYijie Yang		regulator-max-microvolt = <1150000>;
209*c11645afSYijie Yang
210*c11645afSYijie Yang		gpio = <&pmc8380_5_gpios 8 GPIO_ACTIVE_HIGH>;
211*c11645afSYijie Yang		enable-active-high;
212*c11645afSYijie Yang
213*c11645afSYijie Yang		pinctrl-0 = <&usb0_pwr_1p15_reg_en>;
214*c11645afSYijie Yang		pinctrl-names = "default";
215*c11645afSYijie Yang
216*c11645afSYijie Yang		regulator-boot-on;
217*c11645afSYijie Yang	};
218*c11645afSYijie Yang
219*c11645afSYijie Yang	vreg_rtmr0_1p8: regulator-rtmr0-1p8 {
220*c11645afSYijie Yang		compatible = "regulator-fixed";
221*c11645afSYijie Yang
222*c11645afSYijie Yang		regulator-name = "VREG_RTMR0_1P8";
223*c11645afSYijie Yang		regulator-min-microvolt = <1800000>;
224*c11645afSYijie Yang		regulator-max-microvolt = <1800000>;
225*c11645afSYijie Yang
226*c11645afSYijie Yang		gpio = <&pm8550ve_9_gpios 8 GPIO_ACTIVE_HIGH>;
227*c11645afSYijie Yang		enable-active-high;
228*c11645afSYijie Yang
229*c11645afSYijie Yang		pinctrl-0 = <&usb0_1p8_reg_en>;
230*c11645afSYijie Yang		pinctrl-names = "default";
231*c11645afSYijie Yang
232*c11645afSYijie Yang		regulator-boot-on;
233*c11645afSYijie Yang	};
234*c11645afSYijie Yang
235*c11645afSYijie Yang	vreg_rtmr0_3p3: regulator-rtmr0-3p3 {
236*c11645afSYijie Yang		compatible = "regulator-fixed";
237*c11645afSYijie Yang
238*c11645afSYijie Yang		regulator-name = "VREG_RTMR0_3P3";
239*c11645afSYijie Yang		regulator-min-microvolt = <3300000>;
240*c11645afSYijie Yang		regulator-max-microvolt = <3300000>;
241*c11645afSYijie Yang
242*c11645afSYijie Yang		gpio = <&pm8550_gpios 11 GPIO_ACTIVE_HIGH>;
243*c11645afSYijie Yang		enable-active-high;
244*c11645afSYijie Yang
245*c11645afSYijie Yang		pinctrl-0 = <&usb0_3p3_reg_en>;
246*c11645afSYijie Yang		pinctrl-names = "default";
247*c11645afSYijie Yang
248*c11645afSYijie Yang		regulator-boot-on;
249*c11645afSYijie Yang	};
250*c11645afSYijie Yang
251*c11645afSYijie Yang	vreg_rtmr1_1p15: regulator-rtmr1-1p15 {
252*c11645afSYijie Yang		compatible = "regulator-fixed";
253*c11645afSYijie Yang
254*c11645afSYijie Yang		regulator-name = "VREG_RTMR1_1P15";
255*c11645afSYijie Yang		regulator-min-microvolt = <1150000>;
256*c11645afSYijie Yang		regulator-max-microvolt = <1150000>;
257*c11645afSYijie Yang
258*c11645afSYijie Yang		gpio = <&tlmm 188 GPIO_ACTIVE_HIGH>;
259*c11645afSYijie Yang		enable-active-high;
260*c11645afSYijie Yang
261*c11645afSYijie Yang		pinctrl-0 = <&usb1_pwr_1p15_reg_en>;
262*c11645afSYijie Yang		pinctrl-names = "default";
263*c11645afSYijie Yang
264*c11645afSYijie Yang		regulator-boot-on;
265*c11645afSYijie Yang	};
266*c11645afSYijie Yang
267*c11645afSYijie Yang	vreg_rtmr1_1p8: regulator-rtmr1-1p8 {
268*c11645afSYijie Yang		compatible = "regulator-fixed";
269*c11645afSYijie Yang
270*c11645afSYijie Yang		regulator-name = "VREG_RTMR1_1P8";
271*c11645afSYijie Yang		regulator-min-microvolt = <1800000>;
272*c11645afSYijie Yang		regulator-max-microvolt = <1800000>;
273*c11645afSYijie Yang
274*c11645afSYijie Yang		gpio = <&tlmm 175 GPIO_ACTIVE_HIGH>;
275*c11645afSYijie Yang		enable-active-high;
276*c11645afSYijie Yang
277*c11645afSYijie Yang		pinctrl-0 = <&usb1_pwr_1p8_reg_en>;
278*c11645afSYijie Yang		pinctrl-names = "default";
279*c11645afSYijie Yang
280*c11645afSYijie Yang		regulator-boot-on;
281*c11645afSYijie Yang	};
282*c11645afSYijie Yang
283*c11645afSYijie Yang	vreg_rtmr1_3p3: regulator-rtmr1-3p3 {
284*c11645afSYijie Yang		compatible = "regulator-fixed";
285*c11645afSYijie Yang
286*c11645afSYijie Yang		regulator-name = "VREG_RTMR1_3P3";
287*c11645afSYijie Yang		regulator-min-microvolt = <3300000>;
288*c11645afSYijie Yang		regulator-max-microvolt = <3300000>;
289*c11645afSYijie Yang
290*c11645afSYijie Yang		gpio = <&tlmm 186 GPIO_ACTIVE_HIGH>;
291*c11645afSYijie Yang		enable-active-high;
292*c11645afSYijie Yang
293*c11645afSYijie Yang		pinctrl-0 = <&usb1_pwr_3p3_reg_en>;
294*c11645afSYijie Yang		pinctrl-names = "default";
295*c11645afSYijie Yang
296*c11645afSYijie Yang		regulator-boot-on;
297*c11645afSYijie Yang	};
298*c11645afSYijie Yang
299*c11645afSYijie Yang	vreg_rtmr2_1p15: regulator-rtmr2-1p15 {
300*c11645afSYijie Yang		compatible = "regulator-fixed";
301*c11645afSYijie Yang
302*c11645afSYijie Yang		regulator-name = "VREG_RTMR2_1P15";
303*c11645afSYijie Yang		regulator-min-microvolt = <1150000>;
304*c11645afSYijie Yang		regulator-max-microvolt = <1150000>;
305*c11645afSYijie Yang
306*c11645afSYijie Yang		gpio = <&tlmm 189 GPIO_ACTIVE_HIGH>;
307*c11645afSYijie Yang		enable-active-high;
308*c11645afSYijie Yang
309*c11645afSYijie Yang		pinctrl-0 = <&usb2_pwr_1p15_reg_en>;
310*c11645afSYijie Yang		pinctrl-names = "default";
311*c11645afSYijie Yang
312*c11645afSYijie Yang		regulator-boot-on;
313*c11645afSYijie Yang	};
314*c11645afSYijie Yang
315*c11645afSYijie Yang	vreg_rtmr2_1p8: regulator-rtmr2-1p8 {
316*c11645afSYijie Yang		compatible = "regulator-fixed";
317*c11645afSYijie Yang
318*c11645afSYijie Yang		regulator-name = "VREG_RTMR2_1P8";
319*c11645afSYijie Yang		regulator-min-microvolt = <1800000>;
320*c11645afSYijie Yang		regulator-max-microvolt = <1800000>;
321*c11645afSYijie Yang
322*c11645afSYijie Yang		gpio = <&tlmm 126 GPIO_ACTIVE_HIGH>;
323*c11645afSYijie Yang		enable-active-high;
324*c11645afSYijie Yang
325*c11645afSYijie Yang		pinctrl-0 = <&usb2_pwr_1p8_reg_en>;
326*c11645afSYijie Yang		pinctrl-names = "default";
327*c11645afSYijie Yang
328*c11645afSYijie Yang		regulator-boot-on;
329*c11645afSYijie Yang	};
330*c11645afSYijie Yang
331*c11645afSYijie Yang	vreg_rtmr2_3p3: regulator-rtmr2-3p3 {
332*c11645afSYijie Yang		compatible = "regulator-fixed";
333*c11645afSYijie Yang
334*c11645afSYijie Yang		regulator-name = "VREG_RTMR2_3P3";
335*c11645afSYijie Yang		regulator-min-microvolt = <3300000>;
336*c11645afSYijie Yang		regulator-max-microvolt = <3300000>;
337*c11645afSYijie Yang
338*c11645afSYijie Yang		gpio = <&tlmm 187 GPIO_ACTIVE_HIGH>;
339*c11645afSYijie Yang		enable-active-high;
340*c11645afSYijie Yang
341*c11645afSYijie Yang		pinctrl-0 = <&usb2_pwr_3p3_reg_en>;
342*c11645afSYijie Yang		pinctrl-names = "default";
343*c11645afSYijie Yang
344*c11645afSYijie Yang		regulator-boot-on;
345*c11645afSYijie Yang	};
346*c11645afSYijie Yang
347*c11645afSYijie Yang	vph_pwr: regulator-vph-pwr {
348*c11645afSYijie Yang		compatible = "regulator-fixed";
349*c11645afSYijie Yang
350*c11645afSYijie Yang		regulator-name = "vph_pwr";
351*c11645afSYijie Yang		regulator-min-microvolt = <3700000>;
352*c11645afSYijie Yang		regulator-max-microvolt = <3700000>;
353*c11645afSYijie Yang
354*c11645afSYijie Yang		regulator-always-on;
355*c11645afSYijie Yang		regulator-boot-on;
356*c11645afSYijie Yang	};
357*c11645afSYijie Yang
358*c11645afSYijie Yang	/*
359*c11645afSYijie Yang	 * TODO: These two regulators are actually part of the removable M.2
360*c11645afSYijie Yang	 * card and not the EVK mainboard. Need to describe this differently.
361*c11645afSYijie Yang	 * Functionally it works correctly, because all we need to do is to
362*c11645afSYijie Yang	 * turn on the actual 3.3V supply above.
363*c11645afSYijie Yang	 */
364*c11645afSYijie Yang	vreg_wcn_0p95: regulator-wcn-0p95 {
365*c11645afSYijie Yang		compatible = "regulator-fixed";
366*c11645afSYijie Yang
367*c11645afSYijie Yang		regulator-name = "VREG_WCN_0P95";
368*c11645afSYijie Yang		regulator-min-microvolt = <950000>;
369*c11645afSYijie Yang		regulator-max-microvolt = <950000>;
370*c11645afSYijie Yang
371*c11645afSYijie Yang		vin-supply = <&vreg_wcn_3p3>;
372*c11645afSYijie Yang	};
373*c11645afSYijie Yang
374*c11645afSYijie Yang	vreg_wcn_1p9: regulator-wcn-1p9 {
375*c11645afSYijie Yang		compatible = "regulator-fixed";
376*c11645afSYijie Yang
377*c11645afSYijie Yang		regulator-name = "VREG_WCN_1P9";
378*c11645afSYijie Yang		regulator-min-microvolt = <1900000>;
379*c11645afSYijie Yang		regulator-max-microvolt = <1900000>;
380*c11645afSYijie Yang
381*c11645afSYijie Yang		vin-supply = <&vreg_wcn_3p3>;
382*c11645afSYijie Yang	};
383*c11645afSYijie Yang
384*c11645afSYijie Yang	vreg_wcn_3p3: regulator-wcn-3p3 {
385*c11645afSYijie Yang		compatible = "regulator-fixed";
386*c11645afSYijie Yang
387*c11645afSYijie Yang		regulator-name = "VREG_WCN_3P3";
388*c11645afSYijie Yang		regulator-min-microvolt = <3300000>;
389*c11645afSYijie Yang		regulator-max-microvolt = <3300000>;
390*c11645afSYijie Yang
391*c11645afSYijie Yang		gpio = <&tlmm 214 GPIO_ACTIVE_HIGH>;
392*c11645afSYijie Yang		enable-active-high;
393*c11645afSYijie Yang
394*c11645afSYijie Yang		pinctrl-0 = <&wcn_sw_en>;
395*c11645afSYijie Yang		pinctrl-names = "default";
396*c11645afSYijie Yang
397*c11645afSYijie Yang		regulator-always-on;
398*c11645afSYijie Yang		regulator-boot-on;
399*c11645afSYijie Yang	};
400*c11645afSYijie Yang
401*c11645afSYijie Yang	vreg_wwan: regulator-wwan {
402*c11645afSYijie Yang		compatible = "regulator-fixed";
403*c11645afSYijie Yang
404*c11645afSYijie Yang		regulator-name = "SDX_VPH_PWR";
405*c11645afSYijie Yang		regulator-min-microvolt = <3300000>;
406*c11645afSYijie Yang		regulator-max-microvolt = <3300000>;
407*c11645afSYijie Yang
408*c11645afSYijie Yang		gpio = <&tlmm 221 GPIO_ACTIVE_HIGH>;
409*c11645afSYijie Yang		enable-active-high;
410*c11645afSYijie Yang
411*c11645afSYijie Yang		pinctrl-0 = <&wwan_sw_en>;
412*c11645afSYijie Yang		pinctrl-names = "default";
413*c11645afSYijie Yang
414*c11645afSYijie Yang		regulator-boot-on;
415*c11645afSYijie Yang	};
416*c11645afSYijie Yang
417*c11645afSYijie Yang	sound {
418*c11645afSYijie Yang		compatible = "qcom,x1e80100-sndcard";
419*c11645afSYijie Yang		model = "X1E80100-EVK";
420*c11645afSYijie Yang		audio-routing = "WooferLeft IN", "WSA WSA_SPK1 OUT",
421*c11645afSYijie Yang				"TweeterLeft IN", "WSA WSA_SPK2 OUT",
422*c11645afSYijie Yang				"WooferRight IN", "WSA2 WSA_SPK2 OUT",
423*c11645afSYijie Yang				"TweeterRight IN", "WSA2 WSA_SPK2 OUT",
424*c11645afSYijie Yang				"IN1_HPHL", "HPHL_OUT",
425*c11645afSYijie Yang				"IN2_HPHR", "HPHR_OUT",
426*c11645afSYijie Yang				"AMIC2", "MIC BIAS2",
427*c11645afSYijie Yang				"VA DMIC0", "MIC BIAS3",
428*c11645afSYijie Yang				"VA DMIC1", "MIC BIAS3",
429*c11645afSYijie Yang				"VA DMIC2", "MIC BIAS1",
430*c11645afSYijie Yang				"VA DMIC3", "MIC BIAS1",
431*c11645afSYijie Yang				"TX SWR_INPUT1", "ADC2_OUTPUT";
432*c11645afSYijie Yang
433*c11645afSYijie Yang		wcd-playback-dai-link {
434*c11645afSYijie Yang			link-name = "WCD Playback";
435*c11645afSYijie Yang
436*c11645afSYijie Yang			codec {
437*c11645afSYijie Yang				sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>;
438*c11645afSYijie Yang			};
439*c11645afSYijie Yang
440*c11645afSYijie Yang			cpu {
441*c11645afSYijie Yang				sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
442*c11645afSYijie Yang			};
443*c11645afSYijie Yang
444*c11645afSYijie Yang			platform {
445*c11645afSYijie Yang				sound-dai = <&q6apm>;
446*c11645afSYijie Yang			};
447*c11645afSYijie Yang		};
448*c11645afSYijie Yang
449*c11645afSYijie Yang		wcd-capture-dai-link {
450*c11645afSYijie Yang			link-name = "WCD Capture";
451*c11645afSYijie Yang
452*c11645afSYijie Yang			codec {
453*c11645afSYijie Yang				sound-dai = <&wcd938x 1>, <&swr2 1>, <&lpass_txmacro 0>;
454*c11645afSYijie Yang			};
455*c11645afSYijie Yang
456*c11645afSYijie Yang			cpu {
457*c11645afSYijie Yang				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
458*c11645afSYijie Yang			};
459*c11645afSYijie Yang
460*c11645afSYijie Yang			platform {
461*c11645afSYijie Yang				sound-dai = <&q6apm>;
462*c11645afSYijie Yang			};
463*c11645afSYijie Yang		};
464*c11645afSYijie Yang
465*c11645afSYijie Yang		wsa-dai-link {
466*c11645afSYijie Yang			link-name = "WSA Playback";
467*c11645afSYijie Yang
468*c11645afSYijie Yang			codec {
469*c11645afSYijie Yang				sound-dai = <&left_woofer>,
470*c11645afSYijie Yang					    <&left_tweeter>,
471*c11645afSYijie Yang					    <&swr0 0>,
472*c11645afSYijie Yang					    <&lpass_wsamacro 0>,
473*c11645afSYijie Yang					    <&right_woofer>,
474*c11645afSYijie Yang					    <&right_tweeter>,
475*c11645afSYijie Yang					    <&swr3 0>,
476*c11645afSYijie Yang					    <&lpass_wsa2macro 0>;
477*c11645afSYijie Yang			};
478*c11645afSYijie Yang
479*c11645afSYijie Yang			cpu {
480*c11645afSYijie Yang				sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
481*c11645afSYijie Yang			};
482*c11645afSYijie Yang
483*c11645afSYijie Yang			platform {
484*c11645afSYijie Yang				sound-dai = <&q6apm>;
485*c11645afSYijie Yang			};
486*c11645afSYijie Yang		};
487*c11645afSYijie Yang
488*c11645afSYijie Yang		va-dai-link {
489*c11645afSYijie Yang			link-name = "VA Capture";
490*c11645afSYijie Yang
491*c11645afSYijie Yang			codec {
492*c11645afSYijie Yang				sound-dai = <&lpass_vamacro 0>;
493*c11645afSYijie Yang			};
494*c11645afSYijie Yang
495*c11645afSYijie Yang			cpu {
496*c11645afSYijie Yang				sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
497*c11645afSYijie Yang			};
498*c11645afSYijie Yang
499*c11645afSYijie Yang			platform {
500*c11645afSYijie Yang				sound-dai = <&q6apm>;
501*c11645afSYijie Yang			};
502*c11645afSYijie Yang		};
503*c11645afSYijie Yang	};
504*c11645afSYijie Yang
505*c11645afSYijie Yang	usb-1-ss0-sbu-mux {
506*c11645afSYijie Yang		compatible = "onnn,fsusb42", "gpio-sbu-mux";
507*c11645afSYijie Yang
508*c11645afSYijie Yang		enable-gpios = <&tlmm 168 GPIO_ACTIVE_LOW>;
509*c11645afSYijie Yang		select-gpios = <&tlmm 167 GPIO_ACTIVE_HIGH>;
510*c11645afSYijie Yang
511*c11645afSYijie Yang		pinctrl-0 = <&usb_1_ss0_sbu_default>;
512*c11645afSYijie Yang		pinctrl-names = "default";
513*c11645afSYijie Yang
514*c11645afSYijie Yang		mode-switch;
515*c11645afSYijie Yang		orientation-switch;
516*c11645afSYijie Yang
517*c11645afSYijie Yang		port {
518*c11645afSYijie Yang			usb_1_ss0_sbu_mux: endpoint {
519*c11645afSYijie Yang				remote-endpoint = <&pmic_glink_ss0_sbu>;
520*c11645afSYijie Yang			};
521*c11645afSYijie Yang		};
522*c11645afSYijie Yang	};
523*c11645afSYijie Yang
524*c11645afSYijie Yang	wcn7850-pmu {
525*c11645afSYijie Yang		compatible = "qcom,wcn7850-pmu";
526*c11645afSYijie Yang
527*c11645afSYijie Yang		vdd-supply = <&vreg_wcn_0p95>;
528*c11645afSYijie Yang		vddio-supply = <&vreg_l15b_1p8>;
529*c11645afSYijie Yang		vddaon-supply = <&vreg_wcn_0p95>;
530*c11645afSYijie Yang		vdddig-supply = <&vreg_wcn_0p95>;
531*c11645afSYijie Yang		vddrfa1p2-supply = <&vreg_wcn_1p9>;
532*c11645afSYijie Yang		vddrfa1p8-supply = <&vreg_wcn_1p9>;
533*c11645afSYijie Yang
534*c11645afSYijie Yang		bt-enable-gpios = <&tlmm 116 GPIO_ACTIVE_HIGH>;
535*c11645afSYijie Yang		wlan-enable-gpios = <&tlmm 117 GPIO_ACTIVE_HIGH>;
536*c11645afSYijie Yang
537*c11645afSYijie Yang		pinctrl-0 = <&wcn_bt_en>;
538*c11645afSYijie Yang		pinctrl-names = "default";
539*c11645afSYijie Yang
540*c11645afSYijie Yang		regulators {
541*c11645afSYijie Yang			vreg_pmu_rfa_cmn: ldo0 {
542*c11645afSYijie Yang				regulator-name = "vreg_pmu_rfa_cmn";
543*c11645afSYijie Yang			};
544*c11645afSYijie Yang
545*c11645afSYijie Yang			vreg_pmu_aon_0p59: ldo1 {
546*c11645afSYijie Yang				regulator-name = "vreg_pmu_aon_0p59";
547*c11645afSYijie Yang			};
548*c11645afSYijie Yang
549*c11645afSYijie Yang			vreg_pmu_wlcx_0p8: ldo2 {
550*c11645afSYijie Yang				regulator-name = "vreg_pmu_wlcx_0p8";
551*c11645afSYijie Yang			};
552*c11645afSYijie Yang
553*c11645afSYijie Yang			vreg_pmu_wlmx_0p85: ldo3 {
554*c11645afSYijie Yang				regulator-name = "vreg_pmu_wlmx_0p85";
555*c11645afSYijie Yang			};
556*c11645afSYijie Yang
557*c11645afSYijie Yang			vreg_pmu_btcmx_0p85: ldo4 {
558*c11645afSYijie Yang				regulator-name = "vreg_pmu_btcmx_0p85";
559*c11645afSYijie Yang			};
560*c11645afSYijie Yang
561*c11645afSYijie Yang			vreg_pmu_rfa_0p8: ldo5 {
562*c11645afSYijie Yang				regulator-name = "vreg_pmu_rfa_0p8";
563*c11645afSYijie Yang			};
564*c11645afSYijie Yang
565*c11645afSYijie Yang			vreg_pmu_rfa_1p2: ldo6 {
566*c11645afSYijie Yang				regulator-name = "vreg_pmu_rfa_1p2";
567*c11645afSYijie Yang			};
568*c11645afSYijie Yang
569*c11645afSYijie Yang			vreg_pmu_rfa_1p8: ldo7 {
570*c11645afSYijie Yang				regulator-name = "vreg_pmu_rfa_1p8";
571*c11645afSYijie Yang			};
572*c11645afSYijie Yang
573*c11645afSYijie Yang			vreg_pmu_pcie_0p9: ldo8 {
574*c11645afSYijie Yang				regulator-name = "vreg_pmu_pcie_0p9";
575*c11645afSYijie Yang			};
576*c11645afSYijie Yang
577*c11645afSYijie Yang			vreg_pmu_pcie_1p8: ldo9 {
578*c11645afSYijie Yang				regulator-name = "vreg_pmu_pcie_1p8";
579*c11645afSYijie Yang			};
580*c11645afSYijie Yang		};
581*c11645afSYijie Yang	};
582*c11645afSYijie Yang};
583*c11645afSYijie Yang
584*c11645afSYijie Yang&i2c1 {
585*c11645afSYijie Yang	clock-frequency = <400000>;
586*c11645afSYijie Yang	status = "okay";
587*c11645afSYijie Yang
588*c11645afSYijie Yang	typec-mux@8 {
589*c11645afSYijie Yang		compatible = "parade,ps8830";
590*c11645afSYijie Yang		reg = <0x08>;
591*c11645afSYijie Yang
592*c11645afSYijie Yang		clocks = <&rpmhcc RPMH_RF_CLK5>;
593*c11645afSYijie Yang
594*c11645afSYijie Yang		vdd-supply = <&vreg_rtmr2_1p15>;
595*c11645afSYijie Yang		vdd33-supply = <&vreg_rtmr2_3p3>;
596*c11645afSYijie Yang		vdd33-cap-supply = <&vreg_rtmr2_3p3>;
597*c11645afSYijie Yang		vddar-supply = <&vreg_rtmr2_1p15>;
598*c11645afSYijie Yang		vddat-supply = <&vreg_rtmr2_1p15>;
599*c11645afSYijie Yang		vddio-supply = <&vreg_rtmr2_1p8>;
600*c11645afSYijie Yang
601*c11645afSYijie Yang		reset-gpios = <&tlmm 185 GPIO_ACTIVE_LOW>;
602*c11645afSYijie Yang
603*c11645afSYijie Yang		pinctrl-0 = <&rtmr2_default>;
604*c11645afSYijie Yang		pinctrl-names = "default";
605*c11645afSYijie Yang
606*c11645afSYijie Yang		orientation-switch;
607*c11645afSYijie Yang		retimer-switch;
608*c11645afSYijie Yang
609*c11645afSYijie Yang		ports {
610*c11645afSYijie Yang			#address-cells = <1>;
611*c11645afSYijie Yang			#size-cells = <0>;
612*c11645afSYijie Yang
613*c11645afSYijie Yang			port@0 {
614*c11645afSYijie Yang				reg = <0>;
615*c11645afSYijie Yang
616*c11645afSYijie Yang				retimer_ss2_ss_out: endpoint {
617*c11645afSYijie Yang					remote-endpoint = <&pmic_glink_ss2_ss_in>;
618*c11645afSYijie Yang				};
619*c11645afSYijie Yang			};
620*c11645afSYijie Yang
621*c11645afSYijie Yang			port@1 {
622*c11645afSYijie Yang				reg = <1>;
623*c11645afSYijie Yang
624*c11645afSYijie Yang				retimer_ss2_ss_in: endpoint {
625*c11645afSYijie Yang					remote-endpoint = <&usb_1_ss2_qmpphy_out>;
626*c11645afSYijie Yang				};
627*c11645afSYijie Yang			};
628*c11645afSYijie Yang
629*c11645afSYijie Yang			port@2 {
630*c11645afSYijie Yang				reg = <2>;
631*c11645afSYijie Yang
632*c11645afSYijie Yang				retimer_ss2_con_sbu_out: endpoint {
633*c11645afSYijie Yang					remote-endpoint = <&pmic_glink_ss2_con_sbu_in>;
634*c11645afSYijie Yang				};
635*c11645afSYijie Yang			};
636*c11645afSYijie Yang		};
637*c11645afSYijie Yang	};
638*c11645afSYijie Yang};
639*c11645afSYijie Yang
640*c11645afSYijie Yang&i2c5 {
641*c11645afSYijie Yang	clock-frequency = <400000>;
642*c11645afSYijie Yang
643*c11645afSYijie Yang	status = "okay";
644*c11645afSYijie Yang
645*c11645afSYijie Yang	eusb3_repeater: redriver@47 {
646*c11645afSYijie Yang		compatible = "nxp,ptn3222";
647*c11645afSYijie Yang		reg = <0x47>;
648*c11645afSYijie Yang		#phy-cells = <0>;
649*c11645afSYijie Yang
650*c11645afSYijie Yang		vdd3v3-supply = <&vreg_l13b_3p0>;
651*c11645afSYijie Yang		vdd1v8-supply = <&vreg_l4b_1p8>;
652*c11645afSYijie Yang
653*c11645afSYijie Yang		reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
654*c11645afSYijie Yang
655*c11645afSYijie Yang		pinctrl-0 = <&eusb3_reset_n>;
656*c11645afSYijie Yang		pinctrl-names = "default";
657*c11645afSYijie Yang	};
658*c11645afSYijie Yang
659*c11645afSYijie Yang	eusb5_repeater: redriver@43 {
660*c11645afSYijie Yang		compatible = "nxp,ptn3222";
661*c11645afSYijie Yang		reg = <0x43>;
662*c11645afSYijie Yang		#phy-cells = <0>;
663*c11645afSYijie Yang
664*c11645afSYijie Yang		vdd3v3-supply = <&vreg_l13b_3p0>;
665*c11645afSYijie Yang		vdd1v8-supply = <&vreg_l4b_1p8>;
666*c11645afSYijie Yang
667*c11645afSYijie Yang		reset-gpios = <&tlmm 7 GPIO_ACTIVE_LOW>;
668*c11645afSYijie Yang
669*c11645afSYijie Yang		pinctrl-0 = <&eusb5_reset_n>;
670*c11645afSYijie Yang		pinctrl-names = "default";
671*c11645afSYijie Yang	};
672*c11645afSYijie Yang
673*c11645afSYijie Yang	eusb6_repeater: redriver@4f {
674*c11645afSYijie Yang		compatible = "nxp,ptn3222";
675*c11645afSYijie Yang		reg = <0x4f>;
676*c11645afSYijie Yang		#phy-cells = <0>;
677*c11645afSYijie Yang
678*c11645afSYijie Yang		vdd3v3-supply = <&vreg_l13b_3p0>;
679*c11645afSYijie Yang		vdd1v8-supply = <&vreg_l4b_1p8>;
680*c11645afSYijie Yang
681*c11645afSYijie Yang		reset-gpios = <&tlmm 184 GPIO_ACTIVE_LOW>;
682*c11645afSYijie Yang
683*c11645afSYijie Yang		pinctrl-0 = <&eusb6_reset_n>;
684*c11645afSYijie Yang		pinctrl-names = "default";
685*c11645afSYijie Yang	};
686*c11645afSYijie Yang};
687*c11645afSYijie Yang
688*c11645afSYijie Yang&i2c7 {
689*c11645afSYijie Yang	clock-frequency = <400000>;
690*c11645afSYijie Yang
691*c11645afSYijie Yang	status = "okay";
692*c11645afSYijie Yang
693*c11645afSYijie Yang	typec-mux@8 {
694*c11645afSYijie Yang		compatible = "parade,ps8830";
695*c11645afSYijie Yang		reg = <0x8>;
696*c11645afSYijie Yang
697*c11645afSYijie Yang		clocks = <&rpmhcc RPMH_RF_CLK4>;
698*c11645afSYijie Yang
699*c11645afSYijie Yang		vdd-supply = <&vreg_rtmr1_1p15>;
700*c11645afSYijie Yang		vdd33-supply = <&vreg_rtmr1_3p3>;
701*c11645afSYijie Yang		vdd33-cap-supply = <&vreg_rtmr1_3p3>;
702*c11645afSYijie Yang		vddar-supply = <&vreg_rtmr1_1p15>;
703*c11645afSYijie Yang		vddat-supply = <&vreg_rtmr1_1p15>;
704*c11645afSYijie Yang		vddio-supply = <&vreg_rtmr1_1p8>;
705*c11645afSYijie Yang
706*c11645afSYijie Yang		reset-gpios = <&tlmm 176 GPIO_ACTIVE_LOW>;
707*c11645afSYijie Yang
708*c11645afSYijie Yang		pinctrl-0 = <&rtmr1_default>;
709*c11645afSYijie Yang		pinctrl-names = "default";
710*c11645afSYijie Yang
711*c11645afSYijie Yang		retimer-switch;
712*c11645afSYijie Yang		orientation-switch;
713*c11645afSYijie Yang
714*c11645afSYijie Yang		ports {
715*c11645afSYijie Yang			#address-cells = <1>;
716*c11645afSYijie Yang			#size-cells = <0>;
717*c11645afSYijie Yang
718*c11645afSYijie Yang			port@0 {
719*c11645afSYijie Yang				reg = <0>;
720*c11645afSYijie Yang
721*c11645afSYijie Yang				retimer_ss1_ss_out: endpoint {
722*c11645afSYijie Yang					remote-endpoint = <&pmic_glink_ss1_ss_in>;
723*c11645afSYijie Yang				};
724*c11645afSYijie Yang			};
725*c11645afSYijie Yang
726*c11645afSYijie Yang			port@1 {
727*c11645afSYijie Yang				reg = <1>;
728*c11645afSYijie Yang
729*c11645afSYijie Yang				retimer_ss1_ss_in: endpoint {
730*c11645afSYijie Yang					remote-endpoint = <&usb_1_ss1_qmpphy_out>;
731*c11645afSYijie Yang				};
732*c11645afSYijie Yang			};
733*c11645afSYijie Yang
734*c11645afSYijie Yang			port@2 {
735*c11645afSYijie Yang				reg = <2>;
736*c11645afSYijie Yang
737*c11645afSYijie Yang				retimer_ss1_con_sbu_out: endpoint {
738*c11645afSYijie Yang					remote-endpoint = <&pmic_glink_ss1_con_sbu_in>;
739*c11645afSYijie Yang				};
740*c11645afSYijie Yang			};
741*c11645afSYijie Yang		};
742*c11645afSYijie Yang	};
743*c11645afSYijie Yang};
744*c11645afSYijie Yang
745*c11645afSYijie Yang&lpass_tlmm {
746*c11645afSYijie Yang	spkr_01_sd_n_active: spkr-01-sd-n-active-state {
747*c11645afSYijie Yang		pins = "gpio12";
748*c11645afSYijie Yang		function = "gpio";
749*c11645afSYijie Yang		drive-strength = <16>;
750*c11645afSYijie Yang		bias-disable;
751*c11645afSYijie Yang		output-low;
752*c11645afSYijie Yang	};
753*c11645afSYijie Yang
754*c11645afSYijie Yang	spkr_23_sd_n_active: spkr-23-sd-n-active-state {
755*c11645afSYijie Yang		pins = "gpio13";
756*c11645afSYijie Yang		function = "gpio";
757*c11645afSYijie Yang		drive-strength = <16>;
758*c11645afSYijie Yang		bias-disable;
759*c11645afSYijie Yang		output-low;
760*c11645afSYijie Yang	};
761*c11645afSYijie Yang};
762*c11645afSYijie Yang
763*c11645afSYijie Yang&lpass_vamacro {
764*c11645afSYijie Yang	pinctrl-0 = <&dmic01_default>, <&dmic23_default>;
765*c11645afSYijie Yang	pinctrl-names = "default";
766*c11645afSYijie Yang
767*c11645afSYijie Yang	vdd-micb-supply = <&vreg_l1b_1p8>;
768*c11645afSYijie Yang	qcom,dmic-sample-rate = <4800000>;
769*c11645afSYijie Yang};
770*c11645afSYijie Yang
771*c11645afSYijie Yang&mdss {
772*c11645afSYijie Yang	status = "okay";
773*c11645afSYijie Yang};
774*c11645afSYijie Yang
775*c11645afSYijie Yang&mdss_dp0 {
776*c11645afSYijie Yang	status = "okay";
777*c11645afSYijie Yang};
778*c11645afSYijie Yang
779*c11645afSYijie Yang&mdss_dp0_out {
780*c11645afSYijie Yang	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
781*c11645afSYijie Yang};
782*c11645afSYijie Yang
783*c11645afSYijie Yang&mdss_dp1 {
784*c11645afSYijie Yang	status = "okay";
785*c11645afSYijie Yang};
786*c11645afSYijie Yang
787*c11645afSYijie Yang&mdss_dp1_out {
788*c11645afSYijie Yang	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
789*c11645afSYijie Yang};
790*c11645afSYijie Yang
791*c11645afSYijie Yang&mdss_dp2 {
792*c11645afSYijie Yang	status = "okay";
793*c11645afSYijie Yang};
794*c11645afSYijie Yang
795*c11645afSYijie Yang&mdss_dp2_out {
796*c11645afSYijie Yang	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
797*c11645afSYijie Yang};
798*c11645afSYijie Yang
799*c11645afSYijie Yang&mdss_dp3 {
800*c11645afSYijie Yang	/delete-property/ #sound-dai-cells;
801*c11645afSYijie Yang
802*c11645afSYijie Yang	pinctrl-0 = <&edp0_hpd_default>;
803*c11645afSYijie Yang	pinctrl-names = "default";
804*c11645afSYijie Yang
805*c11645afSYijie Yang	status = "okay";
806*c11645afSYijie Yang
807*c11645afSYijie Yang	aux-bus {
808*c11645afSYijie Yang		panel {
809*c11645afSYijie Yang			compatible = "edp-panel";
810*c11645afSYijie Yang			power-supply = <&vreg_edp_3p3>;
811*c11645afSYijie Yang
812*c11645afSYijie Yang			port {
813*c11645afSYijie Yang				edp_panel_in: endpoint {
814*c11645afSYijie Yang					remote-endpoint = <&mdss_dp3_out>;
815*c11645afSYijie Yang				};
816*c11645afSYijie Yang			};
817*c11645afSYijie Yang		};
818*c11645afSYijie Yang	};
819*c11645afSYijie Yang};
820*c11645afSYijie Yang
821*c11645afSYijie Yang&mdss_dp3_out {
822*c11645afSYijie Yang	data-lanes = <0 1 2 3>;
823*c11645afSYijie Yang	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
824*c11645afSYijie Yang
825*c11645afSYijie Yang	remote-endpoint = <&edp_panel_in>;
826*c11645afSYijie Yang};
827*c11645afSYijie Yang
828*c11645afSYijie Yang&mdss_dp3_phy {
829*c11645afSYijie Yang	vdda-phy-supply = <&vreg_l3j_0p8>;
830*c11645afSYijie Yang	vdda-pll-supply = <&vreg_l2j_1p2>;
831*c11645afSYijie Yang
832*c11645afSYijie Yang	status = "okay";
833*c11645afSYijie Yang};
834*c11645afSYijie Yang
835*c11645afSYijie Yang&pcie6a {
836*c11645afSYijie Yang	vddpe-3v3-supply = <&vreg_nvme>;
837*c11645afSYijie Yang};
838*c11645afSYijie Yang
839*c11645afSYijie Yang&pm8550_gpios {
840*c11645afSYijie Yang	rtmr0_default: rtmr0-reset-n-active-state {
841*c11645afSYijie Yang		pins = "gpio10";
842*c11645afSYijie Yang		function = "normal";
843*c11645afSYijie Yang		power-source = <1>; /* 1.8V */
844*c11645afSYijie Yang		bias-disable;
845*c11645afSYijie Yang		input-disable;
846*c11645afSYijie Yang		output-enable;
847*c11645afSYijie Yang	};
848*c11645afSYijie Yang
849*c11645afSYijie Yang	usb0_3p3_reg_en: usb0-3p3-reg-en-state {
850*c11645afSYijie Yang		pins = "gpio11";
851*c11645afSYijie Yang		function = "normal";
852*c11645afSYijie Yang		power-source = <1>; /* 1.8V */
853*c11645afSYijie Yang		bias-disable;
854*c11645afSYijie Yang		input-disable;
855*c11645afSYijie Yang		output-enable;
856*c11645afSYijie Yang	};
857*c11645afSYijie Yang};
858*c11645afSYijie Yang
859*c11645afSYijie Yang&pm8550ve_9_gpios {
860*c11645afSYijie Yang	usb0_1p8_reg_en: usb0-1p8-reg-en-state {
861*c11645afSYijie Yang		pins = "gpio8";
862*c11645afSYijie Yang		function = "normal";
863*c11645afSYijie Yang		power-source = <1>; /* 1.8V */
864*c11645afSYijie Yang		bias-disable;
865*c11645afSYijie Yang		input-disable;
866*c11645afSYijie Yang		output-enable;
867*c11645afSYijie Yang	};
868*c11645afSYijie Yang};
869*c11645afSYijie Yang
870*c11645afSYijie Yang&pmc8380_5_gpios {
871*c11645afSYijie Yang	usb0_pwr_1p15_reg_en: usb0-pwr-1p15-reg-en-state {
872*c11645afSYijie Yang		pins = "gpio8";
873*c11645afSYijie Yang		function = "normal";
874*c11645afSYijie Yang		power-source = <1>; /* 1.8V */
875*c11645afSYijie Yang		bias-disable;
876*c11645afSYijie Yang		input-disable;
877*c11645afSYijie Yang		output-enable;
878*c11645afSYijie Yang	};
879*c11645afSYijie Yang};
880*c11645afSYijie Yang
881*c11645afSYijie Yang&smb2360_0 {
882*c11645afSYijie Yang	status = "okay";
883*c11645afSYijie Yang};
884*c11645afSYijie Yang
885*c11645afSYijie Yang&smb2360_0_eusb2_repeater {
886*c11645afSYijie Yang	vdd18-supply = <&vreg_l3d_1p8>;
887*c11645afSYijie Yang	vdd3-supply = <&vreg_l2b_3p0>;
888*c11645afSYijie Yang};
889*c11645afSYijie Yang
890*c11645afSYijie Yang&smb2360_1 {
891*c11645afSYijie Yang	status = "okay";
892*c11645afSYijie Yang};
893*c11645afSYijie Yang
894*c11645afSYijie Yang&smb2360_1_eusb2_repeater {
895*c11645afSYijie Yang	vdd18-supply = <&vreg_l3d_1p8>;
896*c11645afSYijie Yang	vdd3-supply = <&vreg_l14b_3p0>;
897*c11645afSYijie Yang};
898*c11645afSYijie Yang
899*c11645afSYijie Yang&smb2360_2 {
900*c11645afSYijie Yang	status = "okay";
901*c11645afSYijie Yang};
902*c11645afSYijie Yang
903*c11645afSYijie Yang&smb2360_2_eusb2_repeater {
904*c11645afSYijie Yang	vdd18-supply = <&vreg_l3d_1p8>;
905*c11645afSYijie Yang	vdd3-supply = <&vreg_l8b_3p0>;
906*c11645afSYijie Yang};
907*c11645afSYijie Yang
908*c11645afSYijie Yang&swr0 {
909*c11645afSYijie Yang	status = "okay";
910*c11645afSYijie Yang
911*c11645afSYijie Yang	pinctrl-0 = <&wsa_swr_active>, <&spkr_01_sd_n_active>;
912*c11645afSYijie Yang	pinctrl-names = "default";
913*c11645afSYijie Yang
914*c11645afSYijie Yang	/* WSA8845, Left Woofer */
915*c11645afSYijie Yang	left_woofer: speaker@0,0 {
916*c11645afSYijie Yang		compatible = "sdw20217020400";
917*c11645afSYijie Yang		reg = <0 0>;
918*c11645afSYijie Yang		reset-gpios = <&lpass_tlmm 12 GPIO_ACTIVE_LOW>;
919*c11645afSYijie Yang		#sound-dai-cells = <0>;
920*c11645afSYijie Yang		sound-name-prefix = "WooferLeft";
921*c11645afSYijie Yang		vdd-1p8-supply = <&vreg_l15b_1p8>;
922*c11645afSYijie Yang		vdd-io-supply = <&vreg_l12b_1p2>;
923*c11645afSYijie Yang		qcom,port-mapping = <1 2 3 7 10 13>;
924*c11645afSYijie Yang	};
925*c11645afSYijie Yang
926*c11645afSYijie Yang	/* WSA8845, Left Tweeter */
927*c11645afSYijie Yang	left_tweeter: speaker@0,1 {
928*c11645afSYijie Yang		compatible = "sdw20217020400";
929*c11645afSYijie Yang		reg = <0 1>;
930*c11645afSYijie Yang		reset-gpios = <&lpass_tlmm 12 GPIO_ACTIVE_LOW>;
931*c11645afSYijie Yang		#sound-dai-cells = <0>;
932*c11645afSYijie Yang		sound-name-prefix = "TweeterLeft";
933*c11645afSYijie Yang		vdd-1p8-supply = <&vreg_l15b_1p8>;
934*c11645afSYijie Yang		vdd-io-supply = <&vreg_l12b_1p2>;
935*c11645afSYijie Yang		qcom,port-mapping = <4 5 6 7 11 13>;
936*c11645afSYijie Yang	};
937*c11645afSYijie Yang};
938*c11645afSYijie Yang
939*c11645afSYijie Yang&swr1 {
940*c11645afSYijie Yang	status = "okay";
941*c11645afSYijie Yang
942*c11645afSYijie Yang	/* WCD9385 RX */
943*c11645afSYijie Yang	wcd_rx: codec@0,4 {
944*c11645afSYijie Yang		compatible = "sdw20217010d00";
945*c11645afSYijie Yang		reg = <0 4>;
946*c11645afSYijie Yang		qcom,rx-port-mapping = <1 2 3 4 5>;
947*c11645afSYijie Yang	};
948*c11645afSYijie Yang};
949*c11645afSYijie Yang
950*c11645afSYijie Yang&swr2 {
951*c11645afSYijie Yang	status = "okay";
952*c11645afSYijie Yang
953*c11645afSYijie Yang	/* WCD9385 TX */
954*c11645afSYijie Yang	wcd_tx: codec@0,3 {
955*c11645afSYijie Yang		compatible = "sdw20217010d00";
956*c11645afSYijie Yang		reg = <0 3>;
957*c11645afSYijie Yang		qcom,tx-port-mapping = <2 2 3 4>;
958*c11645afSYijie Yang	};
959*c11645afSYijie Yang};
960*c11645afSYijie Yang
961*c11645afSYijie Yang&swr3 {
962*c11645afSYijie Yang	status = "okay";
963*c11645afSYijie Yang
964*c11645afSYijie Yang	pinctrl-0 = <&wsa2_swr_active>, <&spkr_23_sd_n_active>;
965*c11645afSYijie Yang	pinctrl-names = "default";
966*c11645afSYijie Yang
967*c11645afSYijie Yang	/* WSA8845, Right Woofer */
968*c11645afSYijie Yang	right_woofer: speaker@0,0 {
969*c11645afSYijie Yang		compatible = "sdw20217020400";
970*c11645afSYijie Yang		reg = <0 0>;
971*c11645afSYijie Yang		reset-gpios = <&lpass_tlmm 13 GPIO_ACTIVE_LOW>;
972*c11645afSYijie Yang		#sound-dai-cells = <0>;
973*c11645afSYijie Yang		sound-name-prefix = "WooferRight";
974*c11645afSYijie Yang		vdd-1p8-supply = <&vreg_l15b_1p8>;
975*c11645afSYijie Yang		vdd-io-supply = <&vreg_l12b_1p2>;
976*c11645afSYijie Yang		qcom,port-mapping = <1 2 3 7 10 13>;
977*c11645afSYijie Yang	};
978*c11645afSYijie Yang
979*c11645afSYijie Yang	/* WSA8845, Right Tweeter */
980*c11645afSYijie Yang	right_tweeter: speaker@0,1 {
981*c11645afSYijie Yang		compatible = "sdw20217020400";
982*c11645afSYijie Yang		reg = <0 1>;
983*c11645afSYijie Yang		reset-gpios = <&lpass_tlmm 13 GPIO_ACTIVE_LOW>;
984*c11645afSYijie Yang		#sound-dai-cells = <0>;
985*c11645afSYijie Yang		sound-name-prefix = "TweeterRight";
986*c11645afSYijie Yang		vdd-1p8-supply = <&vreg_l15b_1p8>;
987*c11645afSYijie Yang		vdd-io-supply = <&vreg_l12b_1p2>;
988*c11645afSYijie Yang		qcom,port-mapping = <4 5 6 7 11 13>;
989*c11645afSYijie Yang	};
990*c11645afSYijie Yang};
991*c11645afSYijie Yang
992*c11645afSYijie Yang&tlmm {
993*c11645afSYijie Yang	edp_reg_en: edp-reg-en-state {
994*c11645afSYijie Yang		pins = "gpio70";
995*c11645afSYijie Yang		function = "gpio";
996*c11645afSYijie Yang		drive-strength = <16>;
997*c11645afSYijie Yang		bias-disable;
998*c11645afSYijie Yang	};
999*c11645afSYijie Yang
1000*c11645afSYijie Yang	eusb3_reset_n: eusb3-reset-n-state {
1001*c11645afSYijie Yang		pins = "gpio6";
1002*c11645afSYijie Yang		function = "gpio";
1003*c11645afSYijie Yang		drive-strength = <2>;
1004*c11645afSYijie Yang		bias-disable;
1005*c11645afSYijie Yang		output-low;
1006*c11645afSYijie Yang	};
1007*c11645afSYijie Yang
1008*c11645afSYijie Yang	eusb5_reset_n: eusb5-reset-n-state {
1009*c11645afSYijie Yang		pins = "gpio7";
1010*c11645afSYijie Yang		function = "gpio";
1011*c11645afSYijie Yang		drive-strength = <2>;
1012*c11645afSYijie Yang		bias-pull-up;
1013*c11645afSYijie Yang		output-low;
1014*c11645afSYijie Yang	};
1015*c11645afSYijie Yang
1016*c11645afSYijie Yang	eusb6_reset_n: eusb6-reset-n-state {
1017*c11645afSYijie Yang		pins = "gpio184";
1018*c11645afSYijie Yang		function = "gpio";
1019*c11645afSYijie Yang		drive-strength = <2>;
1020*c11645afSYijie Yang		bias-pull-up;
1021*c11645afSYijie Yang		output-low;
1022*c11645afSYijie Yang	};
1023*c11645afSYijie Yang
1024*c11645afSYijie Yang	nvme_reg_en: nvme-reg-en-state {
1025*c11645afSYijie Yang		pins = "gpio18";
1026*c11645afSYijie Yang		function = "gpio";
1027*c11645afSYijie Yang		drive-strength = <2>;
1028*c11645afSYijie Yang		bias-disable;
1029*c11645afSYijie Yang	};
1030*c11645afSYijie Yang
1031*c11645afSYijie Yang	rtmr1_default: rtmr1-reset-n-active-state {
1032*c11645afSYijie Yang		pins = "gpio176";
1033*c11645afSYijie Yang		function = "gpio";
1034*c11645afSYijie Yang		drive-strength = <2>;
1035*c11645afSYijie Yang		bias-disable;
1036*c11645afSYijie Yang	};
1037*c11645afSYijie Yang
1038*c11645afSYijie Yang	rtmr2_default: rtmr2-reset-n-active-state {
1039*c11645afSYijie Yang		pins = "gpio185";
1040*c11645afSYijie Yang		function = "gpio";
1041*c11645afSYijie Yang		drive-strength = <2>;
1042*c11645afSYijie Yang		bias-disable;
1043*c11645afSYijie Yang	};
1044*c11645afSYijie Yang
1045*c11645afSYijie Yang	usb1_pwr_1p15_reg_en: usb1-pwr-1p15-reg-en-state {
1046*c11645afSYijie Yang		pins = "gpio188";
1047*c11645afSYijie Yang		function = "gpio";
1048*c11645afSYijie Yang		drive-strength = <2>;
1049*c11645afSYijie Yang		bias-disable;
1050*c11645afSYijie Yang	};
1051*c11645afSYijie Yang
1052*c11645afSYijie Yang	usb1_pwr_1p8_reg_en: usb1-pwr-1p8-reg-en-state {
1053*c11645afSYijie Yang		pins = "gpio175";
1054*c11645afSYijie Yang		function = "gpio";
1055*c11645afSYijie Yang		drive-strength = <2>;
1056*c11645afSYijie Yang		bias-disable;
1057*c11645afSYijie Yang	};
1058*c11645afSYijie Yang
1059*c11645afSYijie Yang	usb1_pwr_3p3_reg_en: usb1-pwr-3p3-reg-en-state {
1060*c11645afSYijie Yang		pins = "gpio186";
1061*c11645afSYijie Yang		function = "gpio";
1062*c11645afSYijie Yang		drive-strength = <2>;
1063*c11645afSYijie Yang		bias-disable;
1064*c11645afSYijie Yang	};
1065*c11645afSYijie Yang
1066*c11645afSYijie Yang	usb2_pwr_1p15_reg_en: usb2-pwr-1p15-reg-en-state {
1067*c11645afSYijie Yang		pins = "gpio189";
1068*c11645afSYijie Yang		function = "gpio";
1069*c11645afSYijie Yang		drive-strength = <2>;
1070*c11645afSYijie Yang		bias-disable;
1071*c11645afSYijie Yang	};
1072*c11645afSYijie Yang
1073*c11645afSYijie Yang	usb2_pwr_1p8_reg_en: usb2-pwr-1p8-reg-en-state {
1074*c11645afSYijie Yang		pins = "gpio126";
1075*c11645afSYijie Yang		function = "gpio";
1076*c11645afSYijie Yang		drive-strength = <2>;
1077*c11645afSYijie Yang		bias-disable;
1078*c11645afSYijie Yang	};
1079*c11645afSYijie Yang
1080*c11645afSYijie Yang	usb2_pwr_3p3_reg_en: usb2-pwr-3p3-reg-en-state {
1081*c11645afSYijie Yang		pins = "gpio187";
1082*c11645afSYijie Yang		function = "gpio";
1083*c11645afSYijie Yang		drive-strength = <2>;
1084*c11645afSYijie Yang		bias-disable;
1085*c11645afSYijie Yang	};
1086*c11645afSYijie Yang
1087*c11645afSYijie Yang	usb_1_ss0_sbu_default: usb-1-ss0-sbu-state {
1088*c11645afSYijie Yang		mode-pins {
1089*c11645afSYijie Yang			pins = "gpio166";
1090*c11645afSYijie Yang			function = "gpio";
1091*c11645afSYijie Yang			bias-disable;
1092*c11645afSYijie Yang			drive-strength = <2>;
1093*c11645afSYijie Yang			output-high;
1094*c11645afSYijie Yang		};
1095*c11645afSYijie Yang
1096*c11645afSYijie Yang		oe-n-pins {
1097*c11645afSYijie Yang			pins = "gpio168";
1098*c11645afSYijie Yang			function = "gpio";
1099*c11645afSYijie Yang			bias-disable;
1100*c11645afSYijie Yang			drive-strength = <2>;
1101*c11645afSYijie Yang		};
1102*c11645afSYijie Yang
1103*c11645afSYijie Yang		sel-pins {
1104*c11645afSYijie Yang			pins = "gpio167";
1105*c11645afSYijie Yang			function = "gpio";
1106*c11645afSYijie Yang			bias-disable;
1107*c11645afSYijie Yang			drive-strength = <2>;
1108*c11645afSYijie Yang		};
1109*c11645afSYijie Yang	};
1110*c11645afSYijie Yang
1111*c11645afSYijie Yang	wcd_default: wcd-reset-n-active-state {
1112*c11645afSYijie Yang		pins = "gpio191";
1113*c11645afSYijie Yang		function = "gpio";
1114*c11645afSYijie Yang		drive-strength = <16>;
1115*c11645afSYijie Yang		bias-disable;
1116*c11645afSYijie Yang		output-low;
1117*c11645afSYijie Yang	};
1118*c11645afSYijie Yang
1119*c11645afSYijie Yang	wcn_bt_en: wcn-bt-en-state {
1120*c11645afSYijie Yang		pins = "gpio116";
1121*c11645afSYijie Yang		function = "gpio";
1122*c11645afSYijie Yang		drive-strength = <2>;
1123*c11645afSYijie Yang		bias-disable;
1124*c11645afSYijie Yang	};
1125*c11645afSYijie Yang
1126*c11645afSYijie Yang	wwan_sw_en: wwan-sw-en-state {
1127*c11645afSYijie Yang		pins = "gpio221";
1128*c11645afSYijie Yang		function = "gpio";
1129*c11645afSYijie Yang		drive-strength = <4>;
1130*c11645afSYijie Yang		bias-disable;
1131*c11645afSYijie Yang	};
1132*c11645afSYijie Yang
1133*c11645afSYijie Yang	wcn_sw_en: wcn-sw-en-state {
1134*c11645afSYijie Yang		pins = "gpio214";
1135*c11645afSYijie Yang		function = "gpio";
1136*c11645afSYijie Yang		drive-strength = <2>;
1137*c11645afSYijie Yang		bias-disable;
1138*c11645afSYijie Yang	};
1139*c11645afSYijie Yang
1140*c11645afSYijie Yang	/* Switches USB signal routing between the USB connector and the Wi-Fi card. */
1141*c11645afSYijie Yang	wcn_usb_sw_n: wcn-usb-sw-n-state {
1142*c11645afSYijie Yang		pins = "gpio225";
1143*c11645afSYijie Yang		function = "gpio";
1144*c11645afSYijie Yang		drive-strength = <2>;
1145*c11645afSYijie Yang		bias-disable;
1146*c11645afSYijie Yang		output-high;
1147*c11645afSYijie Yang	};
1148*c11645afSYijie Yang};
1149*c11645afSYijie Yang
1150*c11645afSYijie Yang&uart14 {
1151*c11645afSYijie Yang	status = "okay";
1152*c11645afSYijie Yang
1153*c11645afSYijie Yang	bluetooth {
1154*c11645afSYijie Yang		compatible = "qcom,wcn7850-bt";
1155*c11645afSYijie Yang		max-speed = <3200000>;
1156*c11645afSYijie Yang
1157*c11645afSYijie Yang		vddaon-supply = <&vreg_pmu_aon_0p59>;
1158*c11645afSYijie Yang		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
1159*c11645afSYijie Yang		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
1160*c11645afSYijie Yang		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
1161*c11645afSYijie Yang		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
1162*c11645afSYijie Yang		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
1163*c11645afSYijie Yang		vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
1164*c11645afSYijie Yang	};
1165*c11645afSYijie Yang};
1166*c11645afSYijie Yang
1167*c11645afSYijie Yang&uart21 {
1168*c11645afSYijie Yang	compatible = "qcom,geni-debug-uart";
1169*c11645afSYijie Yang
1170*c11645afSYijie Yang	status = "okay";
1171*c11645afSYijie Yang};
1172*c11645afSYijie Yang
1173*c11645afSYijie Yang&usb_1_ss0_dwc3_hs {
1174*c11645afSYijie Yang	remote-endpoint = <&pmic_glink_ss0_hs_in>;
1175*c11645afSYijie Yang};
1176*c11645afSYijie Yang
1177*c11645afSYijie Yang&usb_1_ss0_hsphy {
1178*c11645afSYijie Yang	phys = <&smb2360_0_eusb2_repeater>;
1179*c11645afSYijie Yang};
1180*c11645afSYijie Yang
1181*c11645afSYijie Yang&usb_1_ss0_qmpphy_out {
1182*c11645afSYijie Yang	remote-endpoint = <&pmic_glink_ss0_ss_in>;
1183*c11645afSYijie Yang};
1184*c11645afSYijie Yang
1185*c11645afSYijie Yang&usb_1_ss1_dwc3_hs {
1186*c11645afSYijie Yang	remote-endpoint = <&pmic_glink_ss1_hs_in>;
1187*c11645afSYijie Yang};
1188*c11645afSYijie Yang
1189*c11645afSYijie Yang&usb_1_ss1_hsphy {
1190*c11645afSYijie Yang	phys = <&smb2360_1_eusb2_repeater>;
1191*c11645afSYijie Yang};
1192*c11645afSYijie Yang
1193*c11645afSYijie Yang&usb_1_ss1_qmpphy_out {
1194*c11645afSYijie Yang	remote-endpoint = <&retimer_ss1_ss_in>;
1195*c11645afSYijie Yang};
1196*c11645afSYijie Yang
1197*c11645afSYijie Yang&usb_1_ss2_dwc3_hs {
1198*c11645afSYijie Yang	remote-endpoint = <&pmic_glink_ss2_hs_in>;
1199*c11645afSYijie Yang};
1200*c11645afSYijie Yang
1201*c11645afSYijie Yang&usb_1_ss2_hsphy {
1202*c11645afSYijie Yang	phys = <&smb2360_2_eusb2_repeater>;
1203*c11645afSYijie Yang};
1204*c11645afSYijie Yang
1205*c11645afSYijie Yang&usb_1_ss2_qmpphy_out {
1206*c11645afSYijie Yang	remote-endpoint = <&retimer_ss2_ss_in>;
1207*c11645afSYijie Yang};
1208*c11645afSYijie Yang
1209*c11645afSYijie Yang&usb_2_hsphy {
1210*c11645afSYijie Yang	phys = <&eusb5_repeater>;
1211*c11645afSYijie Yang
1212*c11645afSYijie Yang	pinctrl-0 = <&wcn_usb_sw_n>;
1213*c11645afSYijie Yang	pinctrl-names = "default";
1214*c11645afSYijie Yang};
1215*c11645afSYijie Yang
1216*c11645afSYijie Yang&usb_mp_hsphy0 {
1217*c11645afSYijie Yang	phys = <&eusb3_repeater>;
1218*c11645afSYijie Yang};
1219*c11645afSYijie Yang
1220*c11645afSYijie Yang&usb_mp_hsphy1 {
1221*c11645afSYijie Yang	phys = <&eusb6_repeater>;
1222*c11645afSYijie Yang};
1223