xref: /linux/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts (revision 3fd6c59042dbba50391e30862beac979491145fe)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2021, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2022, Linaro Limited
5 */
6
7/dts-v1/;
8
9#include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
10#include <dt-bindings/gpio/gpio.h>
11#include <dt-bindings/input/gpio-keys.h>
12#include <dt-bindings/input/input.h>
13#include <dt-bindings/leds/common.h>
14#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
15
16#include "sc8280xp.dtsi"
17#include "sc8280xp-pmics.dtsi"
18
19/ {
20	model = "Lenovo ThinkPad X13s";
21	compatible = "lenovo,thinkpad-x13s", "qcom,sc8280xp";
22
23	aliases {
24		i2c4 = &i2c4;
25		i2c21 = &i2c21;
26		serial1 = &uart2;
27	};
28
29	wcd938x: audio-codec {
30		compatible = "qcom,wcd9380-codec";
31
32		pinctrl-names = "default";
33		pinctrl-0 = <&wcd_default>;
34
35		reset-gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
36
37		vdd-buck-supply = <&vreg_s10b>;
38		vdd-rxtx-supply = <&vreg_s10b>;
39		vdd-io-supply = <&vreg_s10b>;
40		vdd-mic-bias-supply = <&vreg_bob>;
41
42		qcom,micbias1-microvolt = <1800000>;
43		qcom,micbias2-microvolt = <1800000>;
44		qcom,micbias3-microvolt = <1800000>;
45		qcom,micbias4-microvolt = <1800000>;
46		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
47		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
48		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
49		qcom,rx-device = <&wcd_rx>;
50		qcom,tx-device = <&wcd_tx>;
51
52		#sound-dai-cells = <1>;
53	};
54
55	backlight: backlight {
56		compatible = "pwm-backlight";
57		pwms = <&pmc8280c_lpg 3 1000000>;
58		enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>;
59		power-supply = <&vreg_edp_bl>;
60
61		pinctrl-names = "default";
62		pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>;
63	};
64
65	gpio-keys {
66		compatible = "gpio-keys";
67
68		pinctrl-names = "default";
69		pinctrl-0 = <&hall_int_n_default>;
70
71		switch-lid {
72			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
73			linux,input-type = <EV_SW>;
74			linux,code = <SW_LID>;
75			wakeup-source;
76			wakeup-event-action = <EV_ACT_DEASSERTED>;
77		};
78	};
79
80	leds {
81		compatible = "gpio-leds";
82
83		pinctrl-names = "default";
84		pinctrl-0 = <&cam_indicator_en>;
85
86		led-camera-indicator {
87			label = "white:camera-indicator";
88			function = LED_FUNCTION_INDICATOR;
89			color = <LED_COLOR_ID_WHITE>;
90			gpios = <&tlmm 28 GPIO_ACTIVE_HIGH>;
91			linux,default-trigger = "none";
92			default-state = "off";
93			/* Reuse as a panic indicator until we get a "camera on" trigger */
94			panic-indicator;
95		};
96	};
97
98	pmic-glink {
99		compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink";
100
101		#address-cells = <1>;
102		#size-cells = <0>;
103		orientation-gpios = <&tlmm 166 GPIO_ACTIVE_HIGH>,
104				    <&tlmm 49 GPIO_ACTIVE_HIGH>;
105
106		connector@0 {
107			compatible = "usb-c-connector";
108			reg = <0>;
109			power-role = "dual";
110			data-role = "dual";
111
112			ports {
113				#address-cells = <1>;
114				#size-cells = <0>;
115
116				port@0 {
117					reg = <0>;
118
119					pmic_glink_con0_hs: endpoint {
120						remote-endpoint = <&usb_0_dwc3_hs>;
121					};
122				};
123
124				port@1 {
125					reg = <1>;
126
127					pmic_glink_con0_ss: endpoint {
128						remote-endpoint = <&usb_0_qmpphy_out>;
129					};
130				};
131
132				port@2 {
133					reg = <2>;
134
135					pmic_glink_con0_sbu: endpoint {
136						remote-endpoint = <&usb0_sbu_mux>;
137					};
138				};
139			};
140		};
141
142		connector@1 {
143			compatible = "usb-c-connector";
144			reg = <1>;
145			power-role = "dual";
146			data-role = "dual";
147
148			ports {
149				#address-cells = <1>;
150				#size-cells = <0>;
151				port@0 {
152					reg = <0>;
153
154					pmic_glink_con1_hs: endpoint {
155						remote-endpoint = <&usb_1_dwc3_hs>;
156					};
157				};
158
159				port@1 {
160					reg = <1>;
161
162					pmic_glink_con1_ss: endpoint {
163						remote-endpoint = <&usb_1_qmpphy_out>;
164					};
165				};
166
167				port@2 {
168					reg = <2>;
169
170					pmic_glink_con1_sbu: endpoint {
171						remote-endpoint = <&usb1_sbu_mux>;
172					};
173				};
174			};
175		};
176	};
177
178	vreg_edp_3p3: regulator-edp-3p3 {
179		compatible = "regulator-fixed";
180
181		regulator-name = "VCC3LCD";
182		regulator-min-microvolt = <3300000>;
183		regulator-max-microvolt = <3300000>;
184
185		gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
186		enable-active-high;
187
188		pinctrl-names = "default";
189		pinctrl-0 = <&edp_reg_en>;
190
191		regulator-boot-on;
192	};
193
194	vreg_edp_bl: regulator-edp-bl {
195		compatible = "regulator-fixed";
196
197		regulator-name = "VBL9";
198		regulator-min-microvolt = <3600000>;
199		regulator-max-microvolt = <3600000>;
200
201		gpio = <&pmc8280_1_gpios 9 GPIO_ACTIVE_HIGH>;
202		enable-active-high;
203
204		pinctrl-names = "default";
205		pinctrl-0 = <&edp_bl_reg_en>;
206
207		regulator-boot-on;
208	};
209
210	vreg_misc_3p3: regulator-misc-3p3 {
211		compatible = "regulator-fixed";
212
213		regulator-name = "VCC3B";
214		regulator-min-microvolt = <3300000>;
215		regulator-max-microvolt = <3300000>;
216
217		gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>;
218		enable-active-high;
219
220		pinctrl-names = "default";
221		pinctrl-0 = <&misc_3p3_reg_en>;
222
223		regulator-boot-on;
224		regulator-always-on;
225	};
226
227	vreg_nvme: regulator-nvme {
228		compatible = "regulator-fixed";
229
230		regulator-name = "VCC3_SSD";
231		regulator-min-microvolt = <3300000>;
232		regulator-max-microvolt = <3300000>;
233
234		gpio = <&tlmm 135 GPIO_ACTIVE_HIGH>;
235		enable-active-high;
236
237		pinctrl-names = "default";
238		pinctrl-0 = <&nvme_reg_en>;
239
240		regulator-boot-on;
241	};
242
243	vreg_vph_pwr: regulator-vph-pwr {
244		compatible = "regulator-fixed";
245
246		regulator-name = "VPH_VCC3R9";
247		regulator-min-microvolt = <3900000>;
248		regulator-max-microvolt = <3900000>;
249
250		regulator-always-on;
251	};
252
253	vreg_wlan: regulator-wlan {
254		compatible = "regulator-fixed";
255
256		regulator-name = "VCC_WLAN_3R9";
257		regulator-min-microvolt = <3900000>;
258		regulator-max-microvolt = <3900000>;
259
260		gpio = <&pmr735a_gpios 1 GPIO_ACTIVE_HIGH>;
261		enable-active-high;
262
263		pinctrl-names = "default";
264		pinctrl-0 = <&hastings_reg_en>;
265
266		regulator-boot-on;
267	};
268
269	vreg_wwan: regulator-wwan {
270		compatible = "regulator-fixed";
271
272		regulator-name = "VCC3B_WAN";
273		regulator-min-microvolt = <3300000>;
274		regulator-max-microvolt = <3300000>;
275
276		gpio = <&pmc8280_2_gpios 1 GPIO_ACTIVE_HIGH>;
277		enable-active-high;
278
279		pinctrl-names = "default";
280		pinctrl-0 = <&wwan_sw_en>;
281
282		regulator-boot-on;
283	};
284
285	reserved-memory {
286		gpu_mem: gpu-mem@8bf00000 {
287			reg = <0 0x8bf00000 0 0x2000>;
288			no-map;
289		};
290
291		linux,cma {
292			compatible = "shared-dma-pool";
293			size = <0x0 0x8000000>;
294			reusable;
295			linux,cma-default;
296		};
297	};
298
299	thermal-zones {
300		pm8008-thermal {
301			polling-delay-passive = <100>;
302			polling-delay = <0>;
303
304			thermal-sensors = <&pm8008>;
305
306			trips {
307				trip0 {
308					temperature = <95000>;
309					hysteresis = <0>;
310					type = "passive";
311				};
312
313				trip1 {
314					temperature = <115000>;
315					hysteresis = <0>;
316					type = "critical";
317				};
318			};
319		};
320
321		skin-temp-thermal {
322			polling-delay-passive = <250>;
323
324			thermal-sensors = <&pmk8280_adc_tm 5>;
325
326			trips {
327				skin_temp_alert0: trip-point0 {
328					temperature = <55000>;
329					hysteresis = <1000>;
330					type = "passive";
331				};
332
333				skin_temp_alert1: trip-point1 {
334					temperature = <58000>;
335					hysteresis = <1000>;
336					type = "passive";
337				};
338
339				skin-temp-crit {
340					temperature = <73000>;
341					hysteresis = <1000>;
342					type = "critical";
343				};
344			};
345
346			cooling-maps {
347				map0 {
348					trip = <&skin_temp_alert0>;
349					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
350							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
351							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
352							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
353				};
354
355				map1 {
356					trip = <&skin_temp_alert1>;
357					cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
358							 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
359							 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
360							 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
361				};
362			};
363		};
364	};
365
366	usb0-sbu-mux {
367		compatible = "pericom,pi3usb102", "gpio-sbu-mux";
368
369		enable-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>;
370		select-gpios = <&tlmm 164 GPIO_ACTIVE_HIGH>;
371
372		pinctrl-names = "default";
373		pinctrl-0 = <&usb0_sbu_default>;
374
375		mode-switch;
376		orientation-switch;
377
378		port {
379			usb0_sbu_mux: endpoint {
380				remote-endpoint = <&pmic_glink_con0_sbu>;
381			};
382		};
383	};
384
385	usb1-sbu-mux {
386		compatible = "pericom,pi3usb102", "gpio-sbu-mux";
387
388		enable-gpios = <&tlmm 48 GPIO_ACTIVE_LOW>;
389		select-gpios = <&tlmm 47 GPIO_ACTIVE_HIGH>;
390
391		pinctrl-names = "default";
392		pinctrl-0 = <&usb1_sbu_default>;
393
394		mode-switch;
395		orientation-switch;
396
397		port {
398			usb1_sbu_mux: endpoint {
399				remote-endpoint = <&pmic_glink_con1_sbu>;
400			};
401		};
402	};
403
404	wcn6855-pmu {
405		compatible = "qcom,wcn6855-pmu";
406
407		pinctrl-0 = <&bt_default>, <&wlan_en>;
408		pinctrl-names = "default";
409
410		wlan-enable-gpios = <&tlmm 134 GPIO_ACTIVE_HIGH>;
411		bt-enable-gpios = <&tlmm 133 GPIO_ACTIVE_HIGH>;
412		swctrl-gpios = <&tlmm 132 GPIO_ACTIVE_HIGH>;
413
414		vddio-supply = <&vreg_s10b>;
415		vddaon-supply = <&vreg_s12b>;
416		vddpmu-supply = <&vreg_s12b>;
417		vddpmumx-supply = <&vreg_s12b>;
418		vddpmucx-supply = <&vreg_s12b>;
419		vddrfa0p95-supply = <&vreg_s12b>;
420		vddrfa1p3-supply = <&vreg_s11b>;
421		vddrfa1p9-supply = <&vreg_s1c>;
422		vddpcie1p3-supply = <&vreg_s11b>;
423		vddpcie1p9-supply = <&vreg_s1c>;
424
425		regulators {
426			vreg_pmu_rfa_cmn_0p8: ldo0 {
427				regulator-name = "vreg_pmu_rfa_cmn_0p8";
428			};
429
430			vreg_pmu_aon_0p8: ldo1 {
431				regulator-name = "vreg_pmu_aon_0p8";
432			};
433
434			vreg_pmu_wlcx_0p8: ldo2 {
435				regulator-name = "vreg_pmu_wlcx_0p8";
436			};
437
438			vreg_pmu_wlmx_0p8: ldo3 {
439				regulator-name = "vreg_pmu_wlmx_0p8";
440			};
441
442			vreg_pmu_btcmx_0p8: ldo4 {
443				regulator-name = "vreg_pmu_btcmx_0p8";
444			};
445
446			vreg_pmu_pcie_1p8: ldo5 {
447				regulator-name = "vreg_pmu_pcie_1p8";
448			};
449
450			vreg_pmu_pcie_0p9: ldo6 {
451				regulator-name = "vreg_pmu_pcie_0p9";
452			};
453
454			vreg_pmu_rfa_0p8: ldo7 {
455				regulator-name = "vreg_pmu_rfa_0p8";
456			};
457
458			vreg_pmu_rfa_1p2: ldo8 {
459				regulator-name = "vreg_pmu_rfa_1p2";
460			};
461
462			vreg_pmu_rfa_1p7: ldo9 {
463				regulator-name = "vreg_pmu_rfa_1p7";
464			};
465		};
466	};
467};
468
469&apps_rsc {
470	regulators-0 {
471		compatible = "qcom,pm8350-rpmh-regulators";
472		qcom,pmic-id = "b";
473
474		vdd-l1-l4-supply = <&vreg_s12b>;
475		vdd-l2-l7-supply = <&vreg_bob>;
476		vdd-l3-l5-supply = <&vreg_s11b>;
477		vdd-l6-l9-l10-supply = <&vreg_s12b>;
478		vdd-l8-supply = <&vreg_s12b>;
479
480		vreg_s10b: smps10 {
481			regulator-name = "vreg_s10b";
482			regulator-min-microvolt = <1800000>;
483			regulator-max-microvolt = <1800000>;
484			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
485			regulator-always-on;
486		};
487
488		vreg_s11b: smps11 {
489			regulator-name = "vreg_s11b";
490			regulator-min-microvolt = <1272000>;
491			regulator-max-microvolt = <1272000>;
492			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
493		};
494
495		vreg_s12b: smps12 {
496			regulator-name = "vreg_s12b";
497			regulator-min-microvolt = <984000>;
498			regulator-max-microvolt = <984000>;
499			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
500		};
501
502		vreg_l1b: ldo1 {
503			regulator-name = "vreg_l1b";
504			regulator-min-microvolt = <912000>;
505			regulator-max-microvolt = <912000>;
506			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
507		};
508
509		vreg_l3b: ldo3 {
510			regulator-name = "vreg_l3b";
511			regulator-min-microvolt = <1200000>;
512			regulator-max-microvolt = <1200000>;
513			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
514			regulator-boot-on;
515		};
516
517		vreg_l4b: ldo4 {
518			regulator-name = "vreg_l4b";
519			regulator-min-microvolt = <912000>;
520			regulator-max-microvolt = <912000>;
521			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
522		};
523
524		vreg_l6b: ldo6 {
525			regulator-name = "vreg_l6b";
526			regulator-min-microvolt = <880000>;
527			regulator-max-microvolt = <880000>;
528			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
529			regulator-boot-on;
530		};
531	};
532
533	regulators-1 {
534		compatible = "qcom,pm8350c-rpmh-regulators";
535		qcom,pmic-id = "c";
536
537		vdd-bob-supply = <&vreg_vph_pwr>;
538		vdd-l1-l12-supply = <&vreg_s1c>;
539		vdd-l2-l8-supply = <&vreg_s1c>;
540		vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>;
541		vdd-l6-l9-l11-supply = <&vreg_bob>;
542		vdd-l10-supply = <&vreg_s11b>;
543
544		vreg_s1c: smps1 {
545			regulator-name = "vreg_s1c";
546			regulator-min-microvolt = <1880000>;
547			regulator-max-microvolt = <1900000>;
548			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
549			regulator-always-on;
550		};
551
552		vreg_l1c: ldo1 {
553			regulator-name = "vreg_l1c";
554			regulator-min-microvolt = <1800000>;
555			regulator-max-microvolt = <1800000>;
556			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
557		};
558
559		vreg_l8c: ldo8 {
560			regulator-name = "vreg_l8c";
561			regulator-min-microvolt = <1800000>;
562			regulator-max-microvolt = <1800000>;
563			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
564		};
565
566		vreg_l12c: ldo12 {
567			regulator-name = "vreg_l12c";
568			regulator-min-microvolt = <1800000>;
569			regulator-max-microvolt = <1800000>;
570			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
571		};
572
573		vreg_l13c: ldo13 {
574			regulator-name = "vreg_l13c";
575			regulator-min-microvolt = <3072000>;
576			regulator-max-microvolt = <3072000>;
577			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
578		};
579
580		vreg_bob: bob {
581			regulator-name = "vreg_bob";
582			regulator-min-microvolt = <3008000>;
583			regulator-max-microvolt = <3960000>;
584			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
585			regulator-always-on;
586		};
587	};
588
589	regulators-2 {
590		compatible = "qcom,pm8350-rpmh-regulators";
591		qcom,pmic-id = "d";
592
593		vdd-l1-l4-supply = <&vreg_s11b>;
594		vdd-l2-l7-supply = <&vreg_bob>;
595		vdd-l3-l5-supply = <&vreg_s11b>;
596		vdd-l6-l9-l10-supply = <&vreg_s12b>;
597		vdd-l8-supply = <&vreg_s12b>;
598
599		vreg_l2d: ldo2 {
600			regulator-name = "vreg_l2d";
601			regulator-min-microvolt = <3072000>;
602			regulator-max-microvolt = <3072000>;
603			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
604		};
605
606		vreg_l3d: ldo3 {
607			regulator-name = "vreg_l3d";
608			regulator-min-microvolt = <1200000>;
609			regulator-max-microvolt = <1200000>;
610			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
611		};
612
613		vreg_l4d: ldo4 {
614			regulator-name = "vreg_l4d";
615			regulator-min-microvolt = <1200000>;
616			regulator-max-microvolt = <1200000>;
617			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
618		};
619
620		vreg_l6d: ldo6 {
621			regulator-name = "vreg_l6d";
622			regulator-min-microvolt = <880000>;
623			regulator-max-microvolt = <880000>;
624			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
625		};
626
627		vreg_l7d: ldo7 {
628			regulator-name = "vreg_l7d";
629			regulator-min-microvolt = <3072000>;
630			regulator-max-microvolt = <3072000>;
631			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
632		};
633
634		vreg_l8d: ldo8 {
635			regulator-name = "vreg_l8d";
636			regulator-min-microvolt = <912000>;
637			regulator-max-microvolt = <912000>;
638			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
639		};
640
641		vreg_l9d: ldo9 {
642			regulator-name = "vreg_l9d";
643			regulator-min-microvolt = <912000>;
644			regulator-max-microvolt = <912000>;
645			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
646		};
647
648		vreg_l10d: ldo10 {
649			regulator-name = "vreg_l10d";
650			regulator-min-microvolt = <912000>;
651			regulator-max-microvolt = <912000>;
652			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
653		};
654	};
655};
656
657&camss {
658	vdda-phy-supply = <&vreg_l6d>;
659	vdda-pll-supply = <&vreg_l4d>;
660
661	status = "okay";
662
663	ports {
664		port@0 {
665			csiphy0_lanes01_ep: endpoint@0 {
666				reg = <0>;
667				clock-lanes = <7>;
668				data-lanes = <0 1>;
669				remote-endpoint = <&ov5675_ep>;
670			};
671		};
672	};
673};
674
675&cci2 {
676	status = "okay";
677};
678
679&cci2_i2c1 {
680	camera@10 {
681		compatible = "ovti,ov5675";
682		reg = <0x10>;
683
684		reset-gpios = <&tlmm 15 GPIO_ACTIVE_LOW>;
685		pinctrl-names = "default";
686		pinctrl-0 = <&cam_rgb_default>;
687
688		clocks = <&camcc CAMCC_MCLK3_CLK>;
689
690		orientation = <0>;	/* Front facing */
691
692		avdd-supply = <&vreg_l6q>;
693		dvdd-supply = <&vreg_l2q>;
694		dovdd-supply = <&vreg_l7q>;
695
696		port {
697			ov5675_ep: endpoint {
698				data-lanes = <1 2>;
699				link-frequencies = /bits/ 64 <450000000>;
700				remote-endpoint = <&csiphy0_lanes01_ep>;
701			};
702		};
703
704	};
705};
706
707&dispcc0 {
708	status = "okay";
709};
710
711&gpu {
712	status = "okay";
713
714	zap-shader {
715		memory-region = <&gpu_mem>;
716		firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn";
717	};
718};
719
720&mdss0 {
721	status = "okay";
722};
723
724&mdss0_dp0 {
725	status = "okay";
726};
727
728&mdss0_dp0_out {
729	data-lanes = <0 1>;
730	remote-endpoint = <&usb_0_qmpphy_dp_in>;
731};
732
733&mdss0_dp1 {
734	status = "okay";
735};
736
737&mdss0_dp1_out {
738	data-lanes = <0 1>;
739	remote-endpoint = <&usb_1_qmpphy_dp_in>;
740};
741
742&mdss0_dp3 {
743	compatible = "qcom,sc8280xp-edp";
744	/delete-property/ #sound-dai-cells;
745
746	data-lanes = <0 1 2 3>;
747
748	status = "okay";
749
750	aux-bus {
751		panel {
752			compatible = "edp-panel";
753
754			backlight = <&backlight>;
755			power-supply = <&vreg_edp_3p3>;
756
757			port {
758				edp_panel_in: endpoint {
759					remote-endpoint = <&mdss0_dp3_out>;
760				};
761			};
762		};
763	};
764
765	ports {
766		port@1 {
767			reg = <1>;
768			mdss0_dp3_out: endpoint {
769				remote-endpoint = <&edp_panel_in>;
770			};
771		};
772	};
773};
774
775&mdss0_dp3_phy {
776	compatible = "qcom,sc8280xp-edp-phy";
777	vdda-phy-supply = <&vreg_l6b>;
778	vdda-pll-supply = <&vreg_l3b>;
779
780	status = "okay";
781};
782
783&i2c4 {
784	clock-frequency = <400000>;
785
786	pinctrl-names = "default";
787	pinctrl-0 = <&i2c4_default>;
788
789	status = "okay";
790
791	touchscreen@10 {
792		compatible = "elan,ekth5015m", "elan,ekth6915";
793		reg = <0x10>;
794
795		interrupts-extended = <&tlmm 175 IRQ_TYPE_LEVEL_LOW>;
796		reset-gpios = <&tlmm 99 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>;
797		no-reset-on-power-off;
798
799		vcc33-supply = <&vreg_misc_3p3>;
800		vccio-supply = <&vreg_misc_3p3>;
801
802		pinctrl-names = "default";
803		pinctrl-0 = <&ts0_default>;
804	};
805};
806
807&i2c11 {
808	clock-frequency = <400000>;
809
810	pinctrl-names = "default";
811	pinctrl-0 = <&i2c11_default>;
812
813	status = "okay";
814
815	pm8008: pmic@c {
816		compatible = "qcom,pm8008";
817		reg = <0xc>;
818
819		interrupts-extended = <&tlmm 41 IRQ_TYPE_EDGE_RISING>;
820		reset-gpios = <&tlmm 42 GPIO_ACTIVE_LOW>;
821
822		vdd-l1-l2-supply = <&vreg_s11b>;
823		vdd-l3-l4-supply = <&vreg_bob>;
824		vdd-l5-supply = <&vreg_bob>;
825		vdd-l6-supply = <&vreg_bob>;
826		vdd-l7-supply = <&vreg_bob>;
827
828		pinctrl-names = "default";
829		pinctrl-0 = <&pm8008_default>;
830
831		gpio-controller;
832		#gpio-cells = <2>;
833		gpio-ranges = <&pm8008 0 0 2>;
834
835		interrupt-controller;
836		#interrupt-cells = <2>;
837
838		#thermal-sensor-cells = <0>;
839
840		regulators {
841			vreg_l1q: ldo1 {
842				regulator-name = "vreg_l1q";
843				regulator-min-microvolt = <1200000>;
844				regulator-max-microvolt = <1200000>;
845			};
846
847			vreg_l2q: ldo2 {
848				regulator-name = "vreg_l2q";
849				regulator-min-microvolt = <1200000>;
850				regulator-max-microvolt = <1200000>;
851			};
852
853			vreg_l3q: ldo3 {
854				regulator-name = "vreg_l3q";
855				regulator-min-microvolt = <2800000>;
856				regulator-max-microvolt = <2800000>;
857			};
858
859			vreg_l4q: ldo4 {
860				regulator-name = "vreg_l4q";
861				regulator-min-microvolt = <2800000>;
862				regulator-max-microvolt = <2800000>;
863			};
864
865			vreg_l5q: ldo5 {
866				regulator-name = "vreg_l5q";
867				regulator-min-microvolt = <1800000>;
868				regulator-max-microvolt = <1800000>;
869			};
870
871			vreg_l6q: ldo6 {
872				regulator-name = "vreg_l6q";
873				regulator-min-microvolt = <1800000>;
874				regulator-max-microvolt = <1800000>;
875			};
876
877			vreg_l7q: ldo7 {
878				regulator-name = "vreg_l7q";
879				regulator-min-microvolt = <2800000>;
880				regulator-max-microvolt = <2800000>;
881			};
882		};
883	};
884};
885
886&i2c21 {
887	clock-frequency = <400000>;
888
889	pinctrl-names = "default";
890	pinctrl-0 = <&i2c21_default>, <&tpad_default>;
891
892	status = "okay";
893
894	touchpad@15 {
895		compatible = "hid-over-i2c";
896		reg = <0x15>;
897
898		hid-descr-addr = <0x1>;
899		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
900		vdd-supply = <&vreg_misc_3p3>;
901		vddl-supply = <&vreg_s10b>;
902
903		wakeup-source;
904	};
905
906	touchpad@2c {
907		compatible = "hid-over-i2c";
908		reg = <0x2c>;
909
910		hid-descr-addr = <0x20>;
911		interrupts-extended = <&tlmm 182 IRQ_TYPE_LEVEL_LOW>;
912		vdd-supply = <&vreg_misc_3p3>;
913		vddl-supply = <&vreg_s10b>;
914
915		wakeup-source;
916	};
917
918	keyboard@68 {
919		compatible = "hid-over-i2c";
920		reg = <0x68>;
921
922		hid-descr-addr = <0x1>;
923		interrupts-extended = <&tlmm 104 IRQ_TYPE_LEVEL_LOW>;
924		vdd-supply = <&vreg_misc_3p3>;
925		vddl-supply = <&vreg_s10b>;
926
927		pinctrl-names = "default";
928		pinctrl-0 = <&kybd_default>;
929
930		wakeup-source;
931	};
932};
933
934&pcie2a {
935	perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
936	wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
937
938	vddpe-3v3-supply = <&vreg_nvme>;
939
940	pinctrl-names = "default";
941	pinctrl-0 = <&pcie2a_default>;
942
943	status = "okay";
944};
945
946&pcie2a_phy {
947	vdda-phy-supply = <&vreg_l6d>;
948	vdda-pll-supply = <&vreg_l4d>;
949
950	status = "okay";
951};
952
953&pcie3a {
954	perst-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>;
955	wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
956
957	vddpe-3v3-supply = <&vreg_wwan>;
958
959	pinctrl-names = "default";
960	pinctrl-0 = <&pcie3a_default>;
961
962	status = "okay";
963};
964
965&pcie3a_phy {
966	vdda-phy-supply = <&vreg_l6d>;
967	vdda-pll-supply = <&vreg_l4d>;
968
969	status = "okay";
970};
971
972&pcie4 {
973	max-link-speed = <2>;
974
975	perst-gpios = <&tlmm 141 GPIO_ACTIVE_LOW>;
976	wake-gpios = <&tlmm 139 GPIO_ACTIVE_LOW>;
977
978	vddpe-3v3-supply = <&vreg_wlan>;
979
980	pinctrl-names = "default";
981	pinctrl-0 = <&pcie4_default>;
982
983	status = "okay";
984};
985
986&pcie4_port0 {
987	wifi@0 {
988		compatible = "pci17cb,1103";
989		reg = <0x10000 0x0 0x0 0x0 0x0>;
990
991		vddrfacmn-supply = <&vreg_pmu_rfa_cmn_0p8>;
992		vddaon-supply = <&vreg_pmu_aon_0p8>;
993		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
994		vddwlmx-supply = <&vreg_pmu_wlmx_0p8>;
995		vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
996		vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
997		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
998		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
999		vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
1000
1001		qcom,ath11k-calibration-variant = "LE_X13S";
1002	};
1003};
1004
1005&pcie4_phy {
1006	vdda-phy-supply = <&vreg_l6d>;
1007	vdda-pll-supply = <&vreg_l4d>;
1008
1009	status = "okay";
1010};
1011
1012&pmc8280c_lpg {
1013	status = "okay";
1014};
1015
1016&pmk8280_adc_tm {
1017	status = "okay";
1018
1019	sys-therm@0 {
1020		reg = <0>;
1021		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
1022		qcom,hw-settle-time-us = <200>;
1023		qcom,avg-samples = <2>;
1024		qcom,ratiometric;
1025	};
1026
1027	sys-therm@1 {
1028		reg = <1>;
1029		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
1030		qcom,hw-settle-time-us = <200>;
1031		qcom,avg-samples = <2>;
1032		qcom,ratiometric;
1033	};
1034
1035	sys-therm@2 {
1036		reg = <2>;
1037		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
1038		qcom,hw-settle-time-us = <200>;
1039		qcom,avg-samples = <2>;
1040		qcom,ratiometric;
1041	};
1042
1043	sys-therm@3 {
1044		reg = <3>;
1045		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
1046		qcom,hw-settle-time-us = <200>;
1047		qcom,avg-samples = <2>;
1048		qcom,ratiometric;
1049	};
1050
1051	sys-therm@4 {
1052		reg = <4>;
1053		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
1054		qcom,hw-settle-time-us = <200>;
1055		qcom,avg-samples = <2>;
1056		qcom,ratiometric;
1057	};
1058
1059	sys-therm@5 {
1060		reg = <5>;
1061		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
1062		qcom,hw-settle-time-us = <200>;
1063		qcom,avg-samples = <2>;
1064		qcom,ratiometric;
1065	};
1066
1067	sys-therm@6 {
1068		reg = <6>;
1069		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
1070		qcom,hw-settle-time-us = <200>;
1071		qcom,avg-samples = <2>;
1072		qcom,ratiometric;
1073	};
1074
1075	sys-therm@7 {
1076		reg = <7>;
1077		io-channels = <&pmk8280_vadc PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
1078		qcom,hw-settle-time-us = <200>;
1079		qcom,avg-samples = <2>;
1080		qcom,ratiometric;
1081	};
1082};
1083
1084&pmk8280_pon_pwrkey {
1085	status = "okay";
1086};
1087
1088&pmk8280_pon_resin {
1089	status = "okay";
1090};
1091
1092&pmk8280_rtc {
1093	nvmem-cells = <&rtc_offset>;
1094	nvmem-cell-names = "offset";
1095
1096	status = "okay";
1097};
1098
1099&pmk8280_sdam_6 {
1100	status = "okay";
1101
1102	rtc_offset: rtc-offset@bc {
1103		reg = <0xbc 0x4>;
1104	};
1105};
1106
1107&pmk8280_vadc {
1108	channel@144 {
1109		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
1110		qcom,hw-settle-time = <200>;
1111		qcom,ratiometric;
1112		label = "sys_therm1";
1113	};
1114
1115	channel@145 {
1116		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
1117		qcom,hw-settle-time = <200>;
1118		qcom,ratiometric;
1119		label = "sys_therm2";
1120	};
1121
1122	channel@146 {
1123		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
1124		qcom,hw-settle-time = <200>;
1125		qcom,ratiometric;
1126		label = "sys_therm3";
1127	};
1128
1129	channel@147 {
1130		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
1131		qcom,hw-settle-time = <200>;
1132		qcom,ratiometric;
1133		label = "sys_therm4";
1134	};
1135
1136	channel@344 {
1137		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(3)>;
1138		qcom,hw-settle-time = <200>;
1139		qcom,ratiometric;
1140		label = "sys_therm5";
1141	};
1142
1143	channel@345 {
1144		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(3)>;
1145		qcom,hw-settle-time = <200>;
1146		qcom,ratiometric;
1147		label = "sys_therm6";
1148	};
1149
1150	channel@346 {
1151		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(3)>;
1152		qcom,hw-settle-time = <200>;
1153		qcom,ratiometric;
1154		label = "sys_therm7";
1155	};
1156
1157	channel@347 {
1158		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(3)>;
1159		qcom,hw-settle-time = <200>;
1160		qcom,ratiometric;
1161		label = "sys_therm8";
1162	};
1163};
1164
1165&qup0 {
1166	status = "okay";
1167};
1168
1169&qup1 {
1170	status = "okay";
1171};
1172
1173&qup2 {
1174	status = "okay";
1175};
1176
1177&remoteproc_adsp {
1178	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcadsp8280.mbn";
1179
1180	status = "okay";
1181};
1182
1183&remoteproc_nsp0 {
1184	firmware-name = "qcom/sc8280xp/LENOVO/21BX/qccdsp8280.mbn";
1185
1186	status = "okay";
1187};
1188
1189&rxmacro {
1190	status = "okay";
1191};
1192
1193&sound {
1194	compatible = "qcom,sc8280xp-sndcard";
1195	model = "SC8280XP-LENOVO-X13S";
1196	audio-routing =
1197		"SpkrLeft IN", "WSA_SPK1 OUT",
1198		"SpkrRight IN", "WSA_SPK2 OUT",
1199		"IN1_HPHL", "HPHL_OUT",
1200		"IN2_HPHR", "HPHR_OUT",
1201		"AMIC2", "MIC BIAS2",
1202		"VA DMIC0", "MIC BIAS1",
1203		"VA DMIC1", "MIC BIAS1",
1204		"VA DMIC2", "MIC BIAS3",
1205		"VA DMIC0", "VA MIC BIAS1",
1206		"VA DMIC1", "VA MIC BIAS1",
1207		"VA DMIC2", "VA MIC BIAS3",
1208		"TX SWR_ADC1", "ADC2_OUTPUT";
1209
1210	wcd-playback-dai-link {
1211		link-name = "WCD Playback";
1212		cpu {
1213			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
1214		};
1215
1216		codec {
1217			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
1218		};
1219
1220		platform {
1221			sound-dai = <&q6apm>;
1222		};
1223	};
1224
1225	wcd-capture-dai-link {
1226		link-name = "WCD Capture";
1227		cpu {
1228			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
1229		};
1230
1231		codec {
1232			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
1233		};
1234
1235		platform {
1236			sound-dai = <&q6apm>;
1237		};
1238	};
1239
1240	wsa-dai-link {
1241		link-name = "WSA Playback";
1242		cpu {
1243			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
1244		};
1245
1246		codec {
1247			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
1248		};
1249
1250		platform {
1251			sound-dai = <&q6apm>;
1252		};
1253	};
1254
1255	va-dai-link {
1256		link-name = "VA Capture";
1257		cpu {
1258			sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
1259		};
1260
1261		platform {
1262			sound-dai = <&q6apm>;
1263		};
1264
1265		codec {
1266			sound-dai = <&vamacro 0>;
1267		};
1268	};
1269};
1270
1271&swr0 {
1272	status = "okay";
1273
1274	left_spkr: wsa8830-left@0,1 {
1275		compatible = "sdw10217020200";
1276		reg = <0 1>;
1277		pinctrl-names = "default";
1278		pinctrl-0 = <&spkr_1_sd_n_default>;
1279		powerdown-gpios = <&tlmm 178 GPIO_ACTIVE_LOW>;
1280		#thermal-sensor-cells = <0>;
1281		sound-name-prefix = "SpkrLeft";
1282		#sound-dai-cells = <0>;
1283		vdd-supply = <&vreg_s10b>;
1284	};
1285
1286	right_spkr: wsa8830-right@0,2 {
1287		compatible = "sdw10217020200";
1288		reg = <0 2>;
1289		pinctrl-names = "default";
1290		pinctrl-0 = <&spkr_2_sd_n_default>;
1291		powerdown-gpios = <&tlmm 179 GPIO_ACTIVE_LOW>;
1292		#thermal-sensor-cells = <0>;
1293		sound-name-prefix = "SpkrRight";
1294		#sound-dai-cells = <0>;
1295		vdd-supply = <&vreg_s10b>;
1296	};
1297};
1298
1299&swr1 {
1300	status = "okay";
1301
1302	wcd_rx: wcd9380-rx@0,4 {
1303		compatible = "sdw20217010d00";
1304		reg = <0 4>;
1305		qcom,rx-port-mapping = <1 2 3 4 5>;
1306	};
1307};
1308
1309&swr2 {
1310	status = "okay";
1311
1312	wcd_tx: wcd9380-tx@0,3 {
1313		compatible = "sdw20217010d00";
1314		reg = <0 3>;
1315		qcom,tx-port-mapping = <1 1 2 3>;
1316	};
1317};
1318
1319&txmacro {
1320	status = "okay";
1321};
1322
1323&uart2 {
1324	pinctrl-0 = <&uart2_default>;
1325	pinctrl-names = "default";
1326
1327	status = "okay";
1328
1329	bluetooth {
1330		compatible = "qcom,wcn6855-bt";
1331
1332		vddrfacmn-supply = <&vreg_pmu_rfa_cmn_0p8>;
1333		vddaon-supply = <&vreg_pmu_aon_0p8>;
1334		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
1335		vddwlmx-supply = <&vreg_pmu_wlmx_0p8>;
1336		vddbtcmx-supply = <&vreg_pmu_btcmx_0p8>;
1337		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
1338		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
1339		vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
1340
1341		max-speed = <3200000>;
1342	};
1343};
1344
1345&usb_0 {
1346	status = "okay";
1347};
1348
1349&usb_0_dwc3 {
1350	dr_mode = "host";
1351};
1352
1353&usb_0_dwc3_hs {
1354	remote-endpoint = <&pmic_glink_con0_hs>;
1355};
1356
1357&usb_0_hsphy {
1358	vdda-pll-supply = <&vreg_l9d>;
1359	vdda18-supply = <&vreg_l1c>;
1360	vdda33-supply = <&vreg_l7d>;
1361
1362	status = "okay";
1363};
1364
1365&usb_0_qmpphy {
1366	vdda-phy-supply = <&vreg_l9d>;
1367	vdda-pll-supply = <&vreg_l4d>;
1368
1369	orientation-switch;
1370
1371	status = "okay";
1372};
1373
1374&usb_0_qmpphy_dp_in {
1375	remote-endpoint = <&mdss0_dp0_out>;
1376};
1377
1378&usb_0_qmpphy_out {
1379	remote-endpoint = <&pmic_glink_con0_ss>;
1380};
1381
1382&usb_1 {
1383	status = "okay";
1384};
1385
1386&usb_1_dwc3 {
1387	dr_mode = "host";
1388};
1389
1390&usb_1_dwc3_hs {
1391	remote-endpoint = <&pmic_glink_con1_hs>;
1392};
1393
1394&usb_1_hsphy {
1395	vdda-pll-supply = <&vreg_l4b>;
1396	vdda18-supply = <&vreg_l1c>;
1397	vdda33-supply = <&vreg_l13c>;
1398
1399	status = "okay";
1400};
1401
1402&usb_1_qmpphy {
1403	vdda-phy-supply = <&vreg_l4b>;
1404	vdda-pll-supply = <&vreg_l3b>;
1405
1406	orientation-switch;
1407
1408	status = "okay";
1409};
1410
1411&usb_1_qmpphy_dp_in {
1412	remote-endpoint = <&mdss0_dp1_out>;
1413};
1414
1415&usb_1_qmpphy_out {
1416	remote-endpoint = <&pmic_glink_con1_ss>;
1417};
1418
1419&usb_2 {
1420	status = "okay";
1421};
1422
1423&usb_2_hsphy0 {
1424	vdda-pll-supply = <&vreg_l1b>;
1425	vdda18-supply = <&vreg_l1c>;
1426	vdda33-supply = <&vreg_l7d>;
1427
1428	status = "okay";
1429};
1430
1431&usb_2_hsphy1 {
1432	vdda-pll-supply = <&vreg_l8d>;
1433	vdda18-supply = <&vreg_l1c>;
1434	vdda33-supply = <&vreg_l7d>;
1435
1436	status = "okay";
1437};
1438
1439&usb_2_hsphy2 {
1440	vdda-pll-supply = <&vreg_l10d>;
1441	vdda18-supply = <&vreg_l8c>;
1442	vdda33-supply = <&vreg_l2d>;
1443
1444	status = "okay";
1445};
1446
1447&usb_2_hsphy3 {
1448	vdda-pll-supply = <&vreg_l10d>;
1449	vdda18-supply = <&vreg_l8c>;
1450	vdda33-supply = <&vreg_l2d>;
1451
1452	status = "okay";
1453};
1454
1455&usb_2_qmpphy0 {
1456	vdda-phy-supply = <&vreg_l1b>;
1457	vdda-pll-supply = <&vreg_l4d>;
1458
1459	status = "okay";
1460};
1461
1462&usb_2_qmpphy1 {
1463	vdda-phy-supply = <&vreg_l8d>;
1464	vdda-pll-supply = <&vreg_l4d>;
1465
1466	status = "okay";
1467};
1468
1469&vamacro {
1470	pinctrl-0 = <&dmic01_default>, <&dmic23_default>;
1471	pinctrl-names = "default";
1472
1473	vdd-micb-supply = <&vreg_s10b>;
1474
1475	qcom,dmic-sample-rate = <4800000>;
1476
1477	status = "okay";
1478};
1479
1480&wsamacro {
1481	status = "okay";
1482};
1483
1484&xo_board_clk {
1485	clock-frequency = <38400000>;
1486};
1487
1488/* PINCTRL */
1489
1490&lpass_tlmm {
1491	status = "okay";
1492};
1493
1494&pmc8280_1_gpios {
1495	edp_bl_en: edp-bl-en-state {
1496		pins = "gpio8";
1497		function = "normal";
1498	};
1499
1500	edp_bl_reg_en: edp-bl-reg-en-state {
1501		pins = "gpio9";
1502		function = "normal";
1503	};
1504
1505	misc_3p3_reg_en: misc-3p3-reg-en-state {
1506		pins = "gpio1";
1507		function = "normal";
1508	};
1509};
1510
1511&pmc8280_2_gpios {
1512	wwan_sw_en: wwan-sw-en-state {
1513		pins = "gpio1";
1514		function = "normal";
1515	};
1516};
1517
1518&pmc8280c_gpios {
1519	edp_bl_pwm: edp-bl-pwm-state {
1520		pins = "gpio8";
1521		function = "func1";
1522	};
1523};
1524
1525&pmr735a_gpios {
1526	hastings_reg_en: hastings-reg-en-state {
1527		pins = "gpio1";
1528		function = "normal";
1529	};
1530};
1531
1532&tlmm {
1533	gpio-reserved-ranges = <70 2>, <74 6>, <125 2>, <128 2>, <154 4>;
1534
1535	bt_default: bt-default-state {
1536		hstp-bt-en-pins {
1537			pins = "gpio133";
1538			function = "gpio";
1539			drive-strength = <16>;
1540			bias-disable;
1541		};
1542
1543		hstp-sw-ctrl-pins {
1544			pins = "gpio132";
1545			function = "gpio";
1546			bias-pull-down;
1547		};
1548	};
1549
1550	cam_indicator_en: cam-indicator-en-state {
1551		pins = "gpio28";
1552		function = "gpio";
1553		drive-strength = <2>;
1554		bias-disable;
1555	};
1556
1557	cam_rgb_default: cam-rgb-default-state {
1558		mclk-pins {
1559			pins = "gpio17";
1560			function = "cam_mclk";
1561			drive-strength = <16>;
1562			bias-disable;
1563		};
1564
1565		sc-rgb-xshut-n-pins {
1566			pins = "gpio15";
1567			function = "gpio";
1568			drive-strength = <2>;
1569			bias-disable;
1570		};
1571	};
1572
1573	edp_reg_en: edp-reg-en-state {
1574		pins = "gpio25";
1575		function = "gpio";
1576		drive-strength = <16>;
1577		bias-disable;
1578	};
1579
1580	hall_int_n_default: hall-int-n-state {
1581		pins = "gpio107";
1582		function = "gpio";
1583		bias-disable;
1584	};
1585
1586	i2c4_default: i2c4-default-state {
1587		pins = "gpio171", "gpio172";
1588		function = "qup4";
1589		drive-strength = <16>;
1590		bias-disable;
1591	};
1592
1593	i2c11_default: i2c11-default-state {
1594		pins = "gpio18", "gpio19";
1595		function = "qup11";
1596		drive-strength = <16>;
1597		bias-disable;
1598	};
1599
1600	i2c21_default: i2c21-default-state {
1601		pins = "gpio81", "gpio82";
1602		function = "qup21";
1603		drive-strength = <16>;
1604		bias-disable;
1605	};
1606
1607	kybd_default: kybd-default-state {
1608		disable-pins {
1609			pins = "gpio102";
1610			function = "gpio";
1611			output-low;
1612		};
1613
1614		int-n-pins {
1615			pins = "gpio104";
1616			function = "gpio";
1617			bias-disable;
1618		};
1619
1620		reset-pins {
1621			pins = "gpio105";
1622			function = "gpio";
1623			bias-disable;
1624		};
1625	};
1626
1627	nvme_reg_en: nvme-reg-en-state {
1628		pins = "gpio135";
1629		function = "gpio";
1630		drive-strength = <2>;
1631		bias-disable;
1632	};
1633
1634	pcie2a_default: pcie2a-default-state {
1635		clkreq-n-pins {
1636			pins = "gpio142";
1637			function = "pcie2a_clkreq";
1638			drive-strength = <2>;
1639			bias-pull-up;
1640		};
1641
1642		perst-n-pins {
1643			pins = "gpio143";
1644			function = "gpio";
1645			drive-strength = <2>;
1646			bias-disable;
1647		};
1648
1649		wake-n-pins {
1650			pins = "gpio145";
1651			function = "gpio";
1652			drive-strength = <2>;
1653			bias-pull-up;
1654		};
1655	};
1656
1657	pcie3a_default: pcie3a-default-state {
1658		clkreq-n-pins {
1659			pins = "gpio150";
1660			function = "pcie3a_clkreq";
1661			drive-strength = <2>;
1662			bias-pull-up;
1663		};
1664
1665		perst-n-pins {
1666			pins = "gpio151";
1667			function = "gpio";
1668			drive-strength = <2>;
1669			bias-disable;
1670		};
1671
1672		wake-n-pins {
1673			pins = "gpio148";
1674			function = "gpio";
1675			drive-strength = <2>;
1676			bias-pull-up;
1677		};
1678	};
1679
1680	pcie4_default: pcie4-default-state {
1681		clkreq-n-pins {
1682			pins = "gpio140";
1683			function = "pcie4_clkreq";
1684			drive-strength = <2>;
1685			bias-pull-up;
1686		};
1687
1688		perst-n-pins {
1689			pins = "gpio141";
1690			function = "gpio";
1691			drive-strength = <2>;
1692			bias-disable;
1693		};
1694
1695		wake-n-pins {
1696			pins = "gpio139";
1697			function = "gpio";
1698			drive-strength = <2>;
1699			bias-pull-up;
1700		};
1701	};
1702
1703	pm8008_default: pm8008-default-state {
1704		int-pins {
1705			pins = "gpio41";
1706			function = "gpio";
1707			drive-strength = <2>;
1708			bias-pull-down;
1709		};
1710
1711		reset-n-pins {
1712			pins = "gpio42";
1713			function = "gpio";
1714			drive-strength = <2>;
1715			bias-disable;
1716		};
1717	};
1718
1719	spkr_1_sd_n_default: spkr-1-sd-n-default-state {
1720		perst-n-pins {
1721			pins = "gpio178";
1722			function = "gpio";
1723			drive-strength = <16>;
1724			bias-disable;
1725			output-high;
1726		};
1727	};
1728
1729	spkr_2_sd_n_default: spkr-2-sd-n-default-state {
1730		perst-n-pins {
1731			pins = "gpio179";
1732			function = "gpio";
1733			drive-strength = <16>;
1734			bias-disable;
1735			output-high;
1736		};
1737	};
1738
1739	tpad_default: tpad-default-state {
1740		int-n-pins {
1741			pins = "gpio182";
1742			function = "gpio";
1743			bias-disable;
1744		};
1745	};
1746
1747	ts0_default: ts0-default-state {
1748		int-n-pins {
1749			pins = "gpio175";
1750			function = "gpio";
1751			bias-disable;
1752		};
1753
1754		reset-n-pins {
1755			pins = "gpio99";
1756			function = "gpio";
1757			drive-strength = <2>;
1758			bias-disable;
1759		};
1760	};
1761
1762	uart2_default: uart2-default-state {
1763		cts-pins {
1764			pins = "gpio121";
1765			function = "qup2";
1766			bias-bus-hold;
1767		};
1768
1769		rts-pins {
1770			pins = "gpio122";
1771			function = "qup2";
1772			drive-strength = <2>;
1773			bias-disable;
1774		};
1775
1776		rx-pins {
1777			pins = "gpio124";
1778			function = "qup2";
1779			bias-pull-up;
1780		};
1781
1782		tx-pins {
1783			pins = "gpio123";
1784			function = "qup2";
1785			drive-strength = <2>;
1786			bias-disable;
1787		};
1788	};
1789
1790	usb0_sbu_default: usb0-sbu-state {
1791		oe-n-pins {
1792			pins = "gpio101";
1793			function = "gpio";
1794			bias-disable;
1795			drive-strength = <16>;
1796			output-high;
1797		};
1798
1799		sel-pins {
1800			pins = "gpio164";
1801			function = "gpio";
1802			bias-disable;
1803			drive-strength = <16>;
1804		};
1805	};
1806
1807	usb1_sbu_default: usb1-sbu-state {
1808		oe-n-pins {
1809			pins = "gpio48";
1810			function = "gpio";
1811			bias-disable;
1812			drive-strength = <16>;
1813			output-high;
1814		};
1815
1816		sel-pins {
1817			pins = "gpio47";
1818			function = "gpio";
1819			bias-disable;
1820			drive-strength = <16>;
1821		};
1822	};
1823
1824	wcd_default: wcd-default-state {
1825		reset-pins {
1826			pins = "gpio106";
1827			function = "gpio";
1828			bias-disable;
1829		};
1830	};
1831
1832	wlan_en: wlan-en-state {
1833		pins = "gpio134";
1834		function = "gpio";
1835		drive-strength = <8>;
1836		bias-pull-down;
1837	};
1838};
1839