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