xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/x1e80100-lenovo-yoga-slim7x.dts (revision dd21556857e8d40f66bf5ad54754d9d52669ebf7)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
10
11#include "x1e80100.dtsi"
12#include "x1e80100-pmics.dtsi"
13
14/ {
15	model = "Lenovo Yoga Slim 7x";
16	compatible = "lenovo,yoga-slim7x", "qcom,x1e80100";
17
18	pmic-glink {
19		compatible = "qcom,x1e80100-pmic-glink",
20			     "qcom,sm8550-pmic-glink",
21			     "qcom,pmic-glink";
22		#address-cells = <1>;
23		#size-cells = <0>;
24		orientation-gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>,
25				    <&tlmm 123 GPIO_ACTIVE_HIGH>,
26				    <&tlmm 125 GPIO_ACTIVE_HIGH>;
27
28		/* Left-side rear port */
29		connector@0 {
30			compatible = "usb-c-connector";
31			reg = <0>;
32			power-role = "dual";
33			data-role = "dual";
34
35			ports {
36				#address-cells = <1>;
37				#size-cells = <0>;
38
39				port@0 {
40					reg = <0>;
41
42					pmic_glink_ss0_hs_in: endpoint {
43						remote-endpoint = <&usb_1_ss0_dwc3_hs>;
44					};
45				};
46
47				port@1 {
48					reg = <1>;
49
50					pmic_glink_ss0_ss_in: endpoint {
51						remote-endpoint = <&usb_1_ss0_qmpphy_out>;
52					};
53				};
54			};
55		};
56
57		/* Left-side front port */
58		connector@1 {
59			compatible = "usb-c-connector";
60			reg = <1>;
61			power-role = "dual";
62			data-role = "dual";
63
64			ports {
65				#address-cells = <1>;
66				#size-cells = <0>;
67
68				port@0 {
69					reg = <0>;
70
71					pmic_glink_ss1_hs_in: endpoint {
72						remote-endpoint = <&usb_1_ss1_dwc3_hs>;
73					};
74				};
75
76				port@1 {
77					reg = <1>;
78
79					pmic_glink_ss1_ss_in: endpoint {
80						remote-endpoint = <&usb_1_ss1_qmpphy_out>;
81					};
82				};
83			};
84		};
85
86		/* Right-side port */
87		connector@2 {
88			compatible = "usb-c-connector";
89			reg = <2>;
90			power-role = "dual";
91			data-role = "dual";
92
93			ports {
94				#address-cells = <1>;
95				#size-cells = <0>;
96
97				port@0 {
98					reg = <0>;
99
100					pmic_glink_ss2_hs_in: endpoint {
101						remote-endpoint = <&usb_1_ss2_dwc3_hs>;
102					};
103				};
104
105				port@1 {
106					reg = <1>;
107
108					pmic_glink_ss2_ss_in: endpoint {
109						remote-endpoint = <&usb_1_ss2_qmpphy_out>;
110					};
111				};
112			};
113		};
114	};
115
116	reserved-memory {
117		linux,cma {
118			compatible = "shared-dma-pool";
119			size = <0x0 0x8000000>;
120			reusable;
121			linux,cma-default;
122		};
123	};
124
125	sound {
126		compatible = "qcom,x1e80100-sndcard";
127		model = "X1E80100-LENOVO-Yoga-Slim7x";
128		audio-routing = "WooferLeft IN", "WSA WSA_SPK1 OUT",
129				"TweeterLeft IN", "WSA WSA_SPK2 OUT",
130				"WooferRight IN", "WSA2 WSA_SPK2 OUT",
131				"TweeterRight IN", "WSA2 WSA_SPK2 OUT";
132
133		wsa-dai-link {
134			link-name = "WSA Playback";
135
136			cpu {
137				sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
138			};
139
140			codec {
141				sound-dai = <&left_woofer>, <&left_tweeter>,
142					    <&swr0 0>, <&lpass_wsamacro 0>,
143					    <&right_woofer>, <&right_tweeter>,
144					    <&swr3 0>, <&lpass_wsa2macro 0>;
145			};
146
147			platform {
148				sound-dai = <&q6apm>;
149			};
150		};
151
152		va-dai-link {
153			link-name = "VA Capture";
154
155			cpu {
156				sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
157			};
158
159			codec {
160				sound-dai = <&lpass_vamacro 0>;
161			};
162
163			platform {
164				sound-dai = <&q6apm>;
165			};
166		};
167	};
168
169	vph_pwr: vph-pwr-regulator {
170		compatible = "regulator-fixed";
171
172		regulator-name = "vph_pwr";
173		regulator-min-microvolt = <3700000>;
174		regulator-max-microvolt = <3700000>;
175
176		regulator-always-on;
177		regulator-boot-on;
178	};
179
180	vreg_edp_3p3: regulator-edp-3p3 {
181		compatible = "regulator-fixed";
182
183		regulator-name = "VREG_EDP_3P3";
184		regulator-min-microvolt = <3300000>;
185		regulator-max-microvolt = <3300000>;
186
187		gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>;
188		enable-active-high;
189
190		pinctrl-0 = <&edp_reg_en>;
191		pinctrl-names = "default";
192
193		regulator-boot-on;
194	};
195
196	vreg_nvme: regulator-nvme {
197		compatible = "regulator-fixed";
198
199		regulator-name = "VREG_NVME_3P3";
200		regulator-min-microvolt = <3300000>;
201		regulator-max-microvolt = <3300000>;
202
203		gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>;
204		enable-active-high;
205
206		pinctrl-0 = <&nvme_reg_en>;
207		pinctrl-names = "default";
208
209		regulator-boot-on;
210	};
211};
212
213&apps_rsc {
214	regulators-0 {
215		compatible = "qcom,pm8550-rpmh-regulators";
216		qcom,pmic-id = "b";
217
218		vdd-bob1-supply = <&vph_pwr>;
219		vdd-bob2-supply = <&vph_pwr>;
220		vdd-l1-l4-l10-supply = <&vreg_s4c_1p8>;
221		vdd-l2-l13-l14-supply = <&vreg_bob1>;
222		vdd-l5-l16-supply = <&vreg_bob1>;
223		vdd-l6-l7-supply = <&vreg_bob2>;
224		vdd-l8-l9-supply = <&vreg_bob1>;
225		vdd-l12-supply = <&vreg_s5j_1p2>;
226		vdd-l15-supply = <&vreg_s4c_1p8>;
227		vdd-l17-supply = <&vreg_bob2>;
228
229		vreg_bob1: bob1 {
230			regulator-name = "vreg_bob1";
231			regulator-min-microvolt = <3008000>;
232			regulator-max-microvolt = <3960000>;
233			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
234		};
235
236		vreg_bob2: bob2 {
237			regulator-name = "vreg_bob2";
238			regulator-min-microvolt = <2504000>;
239			regulator-max-microvolt = <3008000>;
240			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
241		};
242
243		vreg_l1b_1p8: ldo1 {
244			regulator-name = "vreg_l1b_1p8";
245			regulator-min-microvolt = <1800000>;
246			regulator-max-microvolt = <1800000>;
247			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
248		};
249
250		vreg_l2b_3p0: ldo2 {
251			regulator-name = "vreg_l2b_3p0";
252			regulator-min-microvolt = <3072000>;
253			regulator-max-microvolt = <3100000>;
254			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
255		};
256
257		vreg_l8b_3p0: ldo8 {
258			regulator-name = "vreg_l8b_3p0";
259			regulator-min-microvolt = <3072000>;
260			regulator-max-microvolt = <3072000>;
261			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
262		};
263
264		vreg_l12b_1p2: ldo12 {
265			regulator-name = "vreg_l12b_1p2";
266			regulator-min-microvolt = <1200000>;
267			regulator-max-microvolt = <1200000>;
268			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
269		};
270
271		vreg_l14b_3p0: ldo14 {
272			regulator-name = "vreg_l14b_3p0";
273			regulator-min-microvolt = <3072000>;
274			regulator-max-microvolt = <3072000>;
275			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
276		};
277
278		vreg_l15b_1p8: ldo15 {
279			regulator-name = "vreg_l15b_1p8";
280			regulator-min-microvolt = <1800000>;
281			regulator-max-microvolt = <1800000>;
282			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
283		};
284
285	};
286
287	regulators-1 {
288		compatible = "qcom,pm8550ve-rpmh-regulators";
289		qcom,pmic-id = "c";
290
291		vdd-l1-supply = <&vreg_s5j_1p2>;
292		vdd-l2-supply = <&vreg_s1f_0p7>;
293		vdd-l3-supply = <&vreg_s1f_0p7>;
294		vdd-s4-supply = <&vph_pwr>;
295
296		vreg_s4c_1p8: smps4 {
297			regulator-name = "vreg_s4c_1p8";
298			regulator-min-microvolt = <1856000>;
299			regulator-max-microvolt = <2000000>;
300			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
301		};
302
303		vreg_l1c_1p2: ldo1 {
304			regulator-name = "vreg_l1c_1p2";
305			regulator-min-microvolt = <1200000>;
306			regulator-max-microvolt = <1200000>;
307			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
308		};
309
310		vreg_l2c_0p8: ldo2 {
311			regulator-name = "vreg_l2c_0p8";
312			regulator-min-microvolt = <880000>;
313			regulator-max-microvolt = <920000>;
314			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
315		};
316
317		vreg_l3c_0p8: ldo3 {
318			regulator-name = "vreg_l3c_0p8";
319			regulator-min-microvolt = <880000>;
320			regulator-max-microvolt = <920000>;
321			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
322		};
323	};
324
325	regulators-2 {
326		compatible = "qcom,pmc8380-rpmh-regulators";
327		qcom,pmic-id = "d";
328
329		vdd-l1-supply = <&vreg_s1f_0p7>;
330		vdd-l2-supply = <&vreg_s1f_0p7>;
331		vdd-l3-supply = <&vreg_s4c_1p8>;
332		vdd-s1-supply = <&vph_pwr>;
333
334		vreg_l1d_0p8: ldo1 {
335			regulator-name = "vreg_l1d_0p8";
336			regulator-min-microvolt = <880000>;
337			regulator-max-microvolt = <920000>;
338			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
339		};
340
341		vreg_l2d_0p9: ldo2 {
342			regulator-name = "vreg_l2d_0p9";
343			regulator-min-microvolt = <912000>;
344			regulator-max-microvolt = <920000>;
345			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
346		};
347
348		vreg_l3d_1p8: ldo3 {
349			regulator-name = "vreg_l3d_1p8";
350			regulator-min-microvolt = <1800000>;
351			regulator-max-microvolt = <1800000>;
352			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
353		};
354	};
355
356	regulators-3 {
357		compatible = "qcom,pmc8380-rpmh-regulators";
358		qcom,pmic-id = "e";
359
360		vdd-l2-supply = <&vreg_s1f_0p7>;
361		vdd-l3-supply = <&vreg_s5j_1p2>;
362
363		vreg_l2e_0p8: ldo2 {
364			regulator-name = "vreg_l2e_0p8";
365			regulator-min-microvolt = <880000>;
366			regulator-max-microvolt = <920000>;
367			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
368		};
369
370		vreg_l3e_1p2: ldo3 {
371			regulator-name = "vreg_l3e_1p2";
372			regulator-min-microvolt = <1200000>;
373			regulator-max-microvolt = <1200000>;
374			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
375		};
376	};
377
378	regulators-4 {
379		compatible = "qcom,pmc8380-rpmh-regulators";
380		qcom,pmic-id = "f";
381
382		vdd-l1-supply = <&vreg_s5j_1p2>;
383		vdd-l2-supply = <&vreg_s5j_1p2>;
384		vdd-l3-supply = <&vreg_s5j_1p2>;
385		vdd-s1-supply = <&vph_pwr>;
386
387		vreg_s1f_0p7: smps1 {
388			regulator-name = "vreg_s1f_0p7";
389			regulator-min-microvolt = <700000>;
390			regulator-max-microvolt = <1100000>;
391			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
392		};
393
394		vreg_l1f_1p0: ldo1 {
395			regulator-name = "vreg_l1f_1p0";
396			regulator-min-microvolt = <1024000>;
397			regulator-max-microvolt = <1024000>;
398			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
399		};
400
401		vreg_l2f_1p0: ldo2 {
402			regulator-name = "vreg_l2f_1p0";
403			regulator-min-microvolt = <1024000>;
404			regulator-max-microvolt = <1024000>;
405			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
406		};
407
408		vreg_l3f_1p0: ldo3 {
409			regulator-name = "vreg_l3f_1p0";
410			regulator-min-microvolt = <1024000>;
411			regulator-max-microvolt = <1024000>;
412			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
413		};
414	};
415
416	regulators-6 {
417		compatible = "qcom,pm8550ve-rpmh-regulators";
418		qcom,pmic-id = "i";
419
420		vdd-l1-supply = <&vreg_s4c_1p8>;
421		vdd-l2-supply = <&vreg_s5j_1p2>;
422		vdd-l3-supply = <&vreg_s1f_0p7>;
423		vdd-s1-supply = <&vph_pwr>;
424		vdd-s2-supply = <&vph_pwr>;
425
426		vreg_s1i_0p9: smps1 {
427			regulator-name = "vreg_s1i_0p9";
428			regulator-min-microvolt = <900000>;
429			regulator-max-microvolt = <920000>;
430			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
431		};
432
433		vreg_s2i_1p0: smps2 {
434			regulator-name = "vreg_s2i_1p0";
435			regulator-min-microvolt = <1000000>;
436			regulator-max-microvolt = <1100000>;
437			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
438		};
439
440		vreg_l1i_1p8: ldo1 {
441			regulator-name = "vreg_l1i_1p8";
442			regulator-min-microvolt = <1800000>;
443			regulator-max-microvolt = <1800000>;
444			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
445		};
446
447		vreg_l2i_1p2: ldo2 {
448			regulator-name = "vreg_l2i_1p2";
449			regulator-min-microvolt = <1200000>;
450			regulator-max-microvolt = <1200000>;
451			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
452		};
453
454		vreg_l3i_0p8: ldo3 {
455			regulator-name = "vreg_l3i_0p8";
456			regulator-min-microvolt = <880000>;
457			regulator-max-microvolt = <920000>;
458			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
459		};
460	};
461
462	regulators-7 {
463		compatible = "qcom,pm8550ve-rpmh-regulators";
464		qcom,pmic-id = "j";
465
466		vdd-l1-supply = <&vreg_s1f_0p7>;
467		vdd-l2-supply = <&vreg_s5j_1p2>;
468		vdd-l3-supply = <&vreg_s1f_0p7>;
469		vdd-s5-supply = <&vph_pwr>;
470
471		vreg_s5j_1p2: smps5 {
472			regulator-name = "vreg_s5j_1p2";
473			regulator-min-microvolt = <1256000>;
474			regulator-max-microvolt = <1304000>;
475			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
476		};
477
478		vreg_l1j_0p8: ldo1 {
479			regulator-name = "vreg_l1j_0p8";
480			regulator-min-microvolt = <880000>;
481			regulator-max-microvolt = <920000>;
482			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
483		};
484
485		vreg_l2j_1p2: ldo2 {
486			regulator-name = "vreg_l2j_1p2";
487			regulator-min-microvolt = <1200000>;
488			regulator-max-microvolt = <1200000>;
489			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
490		};
491
492		vreg_l3j_0p8: ldo3 {
493			regulator-name = "vreg_l3j_0p8";
494			regulator-min-microvolt = <880000>;
495			regulator-max-microvolt = <920000>;
496			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
497		};
498	};
499};
500
501&gpu {
502	status = "okay";
503
504	zap-shader {
505		firmware-name = "qcom/x1e80100/LENOVO/83ED/qcdxkmsuc8380.mbn";
506	};
507};
508
509&i2c0 {
510	clock-frequency = <400000>;
511
512	status = "okay";
513
514	touchpad@2c {
515		compatible = "hid-over-i2c";
516		reg = <0x2c>;
517
518		hid-descr-addr = <0x20>;
519		interrupts-extended = <&tlmm 3 IRQ_TYPE_LEVEL_LOW>;
520
521		pinctrl-0 = <&tpad_default>;
522		pinctrl-names = "default";
523
524		wakeup-source;
525	};
526
527	keyboard@3a {
528		compatible = "hid-over-i2c";
529		reg = <0x3a>;
530
531		hid-descr-addr = <0x1>;
532		interrupts-extended = <&tlmm 67 IRQ_TYPE_LEVEL_LOW>;
533
534		pinctrl-0 = <&kybd_default>;
535		pinctrl-names = "default";
536
537		wakeup-source;
538	};
539};
540
541&i2c8 {
542	clock-frequency = <400000>;
543
544	status = "okay";
545
546	touchscreen@14 {
547		compatible = "hid-over-i2c";
548		reg = <0x14>;
549
550		hid-descr-addr = <0x1>;
551		interrupts-extended = <&tlmm 51 IRQ_TYPE_LEVEL_LOW>;
552
553		pinctrl-0 = <&ts0_default>;
554		pinctrl-names = "default";
555	};
556};
557
558&lpass_tlmm {
559	spkr_01_sd_n_active: spkr-01-sd-n-active-state {
560		pins = "gpio12";
561		function = "gpio";
562		drive-strength = <16>;
563		bias-disable;
564		output-low;
565	};
566
567	spkr_23_sd_n_active: spkr-23-sd-n-active-state {
568		pins = "gpio13";
569		function = "gpio";
570		drive-strength = <16>;
571		bias-disable;
572		output-low;
573	};
574};
575
576&lpass_vamacro {
577	pinctrl-0 = <&dmic01_default>, <&dmic23_default>;
578	pinctrl-names = "default";
579
580	vdd-micb-supply = <&vreg_l1b_1p8>;
581	qcom,dmic-sample-rate = <4800000>;
582};
583
584&mdss {
585	status = "okay";
586};
587
588&mdss_dp3 {
589	compatible = "qcom,x1e80100-dp";
590	/delete-property/ #sound-dai-cells;
591
592	status = "okay";
593
594	aux-bus {
595		panel {
596			compatible = "samsung,atna45dc02", "samsung,atna33xc20";
597			enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>;
598			power-supply = <&vreg_edp_3p3>;
599
600			pinctrl-0 = <&edp_bl_en>;
601			pinctrl-names = "default";
602
603			port {
604				edp_panel_in: endpoint {
605					remote-endpoint = <&mdss_dp3_out>;
606				};
607			};
608		};
609	};
610
611	ports {
612		port@1 {
613			reg = <1>;
614
615			mdss_dp3_out: endpoint {
616				data-lanes = <0 1 2 3>;
617				link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
618
619				remote-endpoint = <&edp_panel_in>;
620			};
621		};
622	};
623};
624
625&mdss_dp3_phy {
626	vdda-phy-supply = <&vreg_l3j_0p8>;
627	vdda-pll-supply = <&vreg_l2j_1p2>;
628
629	status = "okay";
630};
631
632&pcie4 {
633	perst-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>;
634	wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
635
636	pinctrl-0 = <&pcie4_default>;
637	pinctrl-names = "default";
638
639	status = "okay";
640};
641
642&pcie4_phy {
643	vdda-phy-supply = <&vreg_l3i_0p8>;
644	vdda-pll-supply = <&vreg_l3e_1p2>;
645
646	status = "okay";
647};
648
649&pcie4_port0 {
650	wifi@0 {
651		compatible = "pci17cb,1107";
652		reg = <0x10000 0x0 0x0 0x0 0x0>;
653
654		qcom,ath12k-calibration-variant = "LES790";
655	};
656};
657
658&pcie6a {
659	perst-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>;
660	wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>;
661
662	vddpe-3v3-supply = <&vreg_nvme>;
663
664	pinctrl-0 = <&pcie6a_default>;
665	pinctrl-names = "default";
666
667	status = "okay";
668};
669
670&pcie6a_phy {
671	vdda-phy-supply = <&vreg_l1d_0p8>;
672	vdda-pll-supply = <&vreg_l2j_1p2>;
673
674	status = "okay";
675};
676
677&pmc8380_3_gpios {
678	edp_bl_en: edp-bl-en-state {
679		pins = "gpio4";
680		function = "normal";
681		power-source = <0>;
682		input-disable;
683		output-enable;
684	};
685};
686
687&qupv3_0 {
688	status = "okay";
689};
690
691&qupv3_1 {
692	status = "okay";
693};
694
695&qupv3_2 {
696	status = "okay";
697};
698
699&remoteproc_adsp {
700	firmware-name = "qcom/x1e80100/LENOVO/83ED/qcadsp8380.mbn",
701			"qcom/x1e80100/LENOVO/83ED/adsp_dtbs.elf";
702	status = "okay";
703};
704
705&remoteproc_cdsp {
706	firmware-name = "qcom/x1e80100/LENOVO/83ED/qccdsp8380.mbn",
707			"qcom/x1e80100/LENOVO/83ED/cdsp_dtbs.elf";
708
709	status = "okay";
710};
711
712&smb2360_0_eusb2_repeater {
713	vdd18-supply = <&vreg_l3d_1p8>;
714	vdd3-supply = <&vreg_l2b_3p0>;
715};
716
717&smb2360_1_eusb2_repeater {
718	vdd18-supply = <&vreg_l3d_1p8>;
719	vdd3-supply = <&vreg_l14b_3p0>;
720};
721
722&smb2360_2 {
723	status = "okay";
724};
725
726&smb2360_2_eusb2_repeater {
727	vdd18-supply = <&vreg_l3d_1p8>;
728	vdd3-supply = <&vreg_l8b_3p0>;
729};
730
731&swr0 {
732	status = "okay";
733
734	pinctrl-0 = <&wsa_swr_active>, <&spkr_01_sd_n_active>;
735	pinctrl-names = "default";
736
737	/* WSA8845, Left Woofer */
738	left_woofer: speaker@0,0 {
739		compatible = "sdw20217020400";
740		reg = <0 0>;
741		reset-gpios = <&lpass_tlmm 12 GPIO_ACTIVE_LOW>;
742		#sound-dai-cells = <0>;
743		sound-name-prefix = "WooferLeft";
744		vdd-1p8-supply = <&vreg_l15b_1p8>;
745		vdd-io-supply = <&vreg_l12b_1p2>;
746		qcom,port-mapping = <1 2 3 7 10 13>;
747	};
748
749	/* WSA8845, Left Tweeter */
750	left_tweeter: speaker@0,1 {
751		compatible = "sdw20217020400";
752		reg = <0 1>;
753		reset-gpios = <&lpass_tlmm 12 GPIO_ACTIVE_LOW>;
754		#sound-dai-cells = <0>;
755		sound-name-prefix = "TweeterLeft";
756		vdd-1p8-supply = <&vreg_l15b_1p8>;
757		vdd-io-supply = <&vreg_l12b_1p2>;
758		qcom,port-mapping = <4 5 6 7 11 13>;
759	};
760};
761
762
763&swr3 {
764	status = "okay";
765
766	pinctrl-0 = <&wsa2_swr_active>, <&spkr_23_sd_n_active>;
767	pinctrl-names = "default";
768
769	/* WSA8845, Right Woofer */
770	right_woofer: speaker@0,0 {
771		compatible = "sdw20217020400";
772		reg = <0 0>;
773		reset-gpios = <&lpass_tlmm 13 GPIO_ACTIVE_LOW>;
774		#sound-dai-cells = <0>;
775		sound-name-prefix = "WooferRight";
776		vdd-1p8-supply = <&vreg_l15b_1p8>;
777		vdd-io-supply = <&vreg_l12b_1p2>;
778		qcom,port-mapping = <1 2 3 7 10 13>;
779	};
780
781	/* WSA8845, Right Tweeter */
782	right_tweeter: speaker@0,1 {
783		compatible = "sdw20217020400";
784		reg = <0 1>;
785		reset-gpios = <&lpass_tlmm 13 GPIO_ACTIVE_LOW>;
786		#sound-dai-cells = <0>;
787		sound-name-prefix = "TweeterRight";
788		vdd-1p8-supply = <&vreg_l15b_1p8>;
789		vdd-io-supply = <&vreg_l12b_1p2>;
790		qcom,port-mapping = <4 5 6 7 11 13>;
791	};
792};
793
794&tlmm {
795	gpio-reserved-ranges = <34 2>, /* Unused */
796			       <44 4>, /* SPI (TPM) */
797			       <238 1>; /* UFS Reset */
798
799	edp_reg_en: edp-reg-en-state {
800		pins = "gpio70";
801		function = "gpio";
802		drive-strength = <16>;
803		bias-disable;
804	};
805
806	kybd_default: kybd-default-state {
807		pins = "gpio67";
808		function = "gpio";
809		bias-disable;
810	};
811
812	nvme_reg_en: nvme-reg-en-state {
813		pins = "gpio18";
814		function = "gpio";
815		drive-strength = <2>;
816		bias-disable;
817	};
818
819	pcie4_default: pcie4-default-state {
820		clkreq-n-pins {
821			pins = "gpio147";
822			function = "pcie4_clk";
823			drive-strength = <2>;
824			bias-pull-up;
825		};
826
827		perst-n-pins {
828			pins = "gpio146";
829			function = "gpio";
830			drive-strength = <2>;
831			bias-disable;
832		};
833
834		wake-n-pins {
835			pins = "gpio148";
836			function = "gpio";
837			drive-strength = <2>;
838			bias-pull-up;
839		};
840	};
841
842	pcie6a_default: pcie6a-default-state {
843		clkreq-n-pins {
844			pins = "gpio153";
845			function = "pcie6a_clk";
846			drive-strength = <2>;
847			bias-pull-up;
848		};
849
850		perst-n-pins {
851			pins = "gpio152";
852			function = "gpio";
853			drive-strength = <2>;
854			bias-disable;
855		};
856
857		wake-n-pins {
858			pins = "gpio154";
859			function = "gpio";
860			drive-strength = <2>;
861			bias-pull-up;
862		};
863	};
864
865	tpad_default: tpad-default-state {
866		pins = "gpio3";
867		function = "gpio";
868		bias-disable;
869	};
870
871	ts0_default: ts0-default-state {
872		int-n-pins {
873			pins = "gpio51";
874			function = "gpio";
875			bias-disable;
876		};
877
878		reset-n-pins {
879			pins = "gpio48";
880			function = "gpio";
881			output-high;
882			drive-strength = <16>;
883		};
884	};
885
886};
887
888&usb_1_ss0_hsphy {
889	vdd-supply = <&vreg_l3j_0p8>;
890	vdda12-supply = <&vreg_l2j_1p2>;
891
892	phys = <&smb2360_0_eusb2_repeater>;
893
894	status = "okay";
895};
896
897&usb_1_ss0_qmpphy {
898	vdda-phy-supply = <&vreg_l3e_1p2>;
899	vdda-pll-supply = <&vreg_l1j_0p8>;
900
901	orientation-switch;
902
903	status = "okay";
904};
905
906&usb_1_ss0 {
907	status = "okay";
908};
909
910&usb_1_ss0_dwc3 {
911	dr_mode = "host";
912};
913
914&usb_1_ss0_dwc3_hs {
915	remote-endpoint = <&pmic_glink_ss0_hs_in>;
916};
917
918&usb_1_ss0_qmpphy_out {
919	remote-endpoint = <&pmic_glink_ss0_ss_in>;
920};
921
922&usb_1_ss1_hsphy {
923	vdd-supply = <&vreg_l3j_0p8>;
924	vdda12-supply = <&vreg_l2j_1p2>;
925
926	phys = <&smb2360_1_eusb2_repeater>;
927
928	status = "okay";
929};
930
931&usb_1_ss1_qmpphy {
932	vdda-phy-supply = <&vreg_l3e_1p2>;
933	vdda-pll-supply = <&vreg_l2d_0p9>;
934
935	orientation-switch;
936
937	status = "okay";
938};
939
940&usb_1_ss1 {
941	status = "okay";
942};
943
944&usb_1_ss1_dwc3 {
945	dr_mode = "host";
946};
947
948&usb_1_ss1_dwc3_hs {
949	remote-endpoint = <&pmic_glink_ss1_hs_in>;
950};
951
952&usb_1_ss1_qmpphy_out {
953	remote-endpoint = <&pmic_glink_ss1_ss_in>;
954};
955
956&usb_1_ss2_hsphy {
957	vdd-supply = <&vreg_l3j_0p8>;
958	vdda12-supply = <&vreg_l2j_1p2>;
959
960	phys = <&smb2360_2_eusb2_repeater>;
961
962	status = "okay";
963};
964
965&usb_1_ss2_qmpphy {
966	vdda-phy-supply = <&vreg_l3e_1p2>;
967	vdda-pll-supply = <&vreg_l2d_0p9>;
968
969	status = "okay";
970};
971
972&usb_1_ss2 {
973	status = "okay";
974};
975
976&usb_1_ss2_dwc3 {
977	dr_mode = "host";
978};
979
980&usb_1_ss2_dwc3_hs {
981	remote-endpoint = <&pmic_glink_ss2_hs_in>;
982};
983
984&usb_1_ss2_qmpphy_out {
985	remote-endpoint = <&pmic_glink_ss2_ss_in>;
986};
987