xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/hamoa-lenovo-ideacentre-mini-01q8x10.dts (revision 0fc8f6200d2313278fbf4539bbab74677c685531)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
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 "hamoa.dtsi"
12#include "hamoa-pmics.dtsi"
13
14/ {
15	model = "Lenovo IdeaCentre Mini 01Q8X10";
16	compatible = "lenovo,ideacentre-mini-01q8x10", "qcom,x1e80100";
17	chassis-type = "desktop";
18
19	aliases {
20		serial0 = &uart14;
21	};
22
23	wcd938x: audio-codec {
24		compatible = "qcom,wcd9385-codec";
25
26		pinctrl-0 = <&wcd_default>;
27		pinctrl-names = "default";
28
29		qcom,micbias1-microvolt = <1800000>;
30		qcom,micbias2-microvolt = <1800000>;
31		qcom,micbias3-microvolt = <1800000>;
32		qcom,micbias4-microvolt = <1800000>;
33		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
34		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
35		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
36		qcom,rx-device = <&wcd_rx>;
37		qcom,tx-device = <&wcd_tx>;
38
39		reset-gpios = <&tlmm 191 GPIO_ACTIVE_LOW>;
40		mux-controls = <&us_euro_mux_ctrl>;
41
42		vdd-buck-supply = <&vreg_l15b>;
43		vdd-rxtx-supply = <&vreg_l15b>;
44		vdd-io-supply = <&vreg_l15b>;
45		vdd-mic-bias-supply = <&vreg_bob1>;
46
47		#sound-dai-cells = <1>;
48	};
49
50	dp-connector {
51		compatible = "dp-connector";
52		type = "full-size";
53
54		pinctrl-0 = <&usb1_dp_hot_plug_detect>;
55		pinctrl-names = "default";
56
57		port {
58			dp_port_in: endpoint {
59				remote-endpoint = <&usb_1_ss1_qmpphy_out_dp>;
60			};
61		};
62	};
63
64	hdmi-bridge {
65		compatible = "parade,ps185hdm";
66
67		pinctrl-0 = <&usb2_dp_hot_plug_detect>;
68		pinctrl-names = "default";
69
70		ports {
71			#address-cells = <1>;
72			#size-cells = <0>;
73
74			port@0 {
75				reg = <0>;
76
77				hdmi_bridge_in: endpoint {
78					remote-endpoint = <&usb_1_ss2_qmpphy_out_dp>;
79				};
80			};
81
82			port@1 {
83				reg = <1>;
84
85				hdmi_bridge_out: endpoint {
86					remote-endpoint = <&hdmi_con>;
87				};
88			};
89		};
90	};
91
92	hdmi-connector {
93		compatible = "hdmi-connector";
94		type = "a";
95
96		port {
97			hdmi_con: endpoint {
98				remote-endpoint = <&hdmi_bridge_out>;
99			};
100		};
101	};
102
103	us_euro_mux_ctrl: mux-controller {
104		compatible = "gpio-mux";
105		pinctrl-0 = <&us_euro_hs_sel>;
106		pinctrl-names = "default";
107		mux-supply = <&vreg_l16b>;
108		#mux-control-cells = <0>;
109		mux-gpios = <&tlmm 68 GPIO_ACTIVE_HIGH>;
110	};
111
112	pmic-glink {
113		compatible = "qcom,x1e80100-pmic-glink",
114			     "qcom,sm8550-pmic-glink",
115			     "qcom,pmic-glink";
116		orientation-gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>;
117
118		#address-cells = <1>;
119		#size-cells = <0>;
120
121		connector@0 {
122			compatible = "usb-c-connector";
123			reg = <0>;
124			power-role = "dual";
125			data-role = "dual";
126
127			ports {
128				#address-cells = <1>;
129				#size-cells = <0>;
130
131				port@0 {
132					reg = <0>;
133
134					pmic_glink_port0_hs_in: endpoint {
135						remote-endpoint = <&usb_1_ss0_dwc3_hs>;
136					};
137				};
138
139				port@1 {
140					reg = <1>;
141
142					pmic_glink_port0_ss_in: endpoint {
143						remote-endpoint = <&usb0_retimer_out>;
144					};
145				};
146
147				port@2 {
148					reg = <2>;
149
150					pmic_glink_port0_sbu_in: endpoint {
151						remote-endpoint = <&usb0_retimer_sbu_out>;
152					};
153				};
154			};
155		};
156	};
157
158	vreg_nvme1_3p3: regulator-nvme1-3p3 {
159		compatible = "regulator-fixed";
160
161		regulator-name = "VREG_NVME1_3P3";
162		regulator-min-microvolt = <3300000>;
163		regulator-max-microvolt = <3300000>;
164
165		gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>;
166		enable-active-high;
167
168		pinctrl-0 = <&nvme_reg_en>;
169		pinctrl-names = "default";
170
171		regulator-boot-on;
172	};
173
174	vreg_nvme2_3p3: regulator-nvme2-3p3 {
175		compatible = "regulator-fixed";
176
177		regulator-name = "VREG_NVME2_3P3";
178		regulator-min-microvolt = <3300000>;
179		regulator-max-microvolt = <3300000>;
180
181		gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>;
182		enable-active-high;
183
184		pinctrl-0 = <&nvme_reg_en>;
185		pinctrl-names = "default";
186
187		regulator-boot-on;
188	};
189
190	vreg_v0p9: regulator-v0p9 {
191		compatible = "regulator-fixed";
192
193		regulator-name = "V0P9";
194		regulator-min-microvolt = <906000>;
195		regulator-max-microvolt = <906000>;
196
197		gpio = <&pmc8380_5_gpios 8 GPIO_ACTIVE_HIGH>;
198		enable-active-high;
199
200		pinctrl-0 = <&usb0_pwr_1p15_reg_en>;
201		pinctrl-names = "default";
202
203		regulator-boot-on;
204	};
205
206	vreg_vdd1v8: regulator-vdd1v8 {
207		compatible = "regulator-fixed";
208
209		regulator-name = "VDD1V8";
210		regulator-min-microvolt = <1800000>;
211		regulator-max-microvolt = <1800000>;
212
213		vin-supply = <&vreg_l15b>;
214
215		gpio = <&pm8550ve_9_gpios 8 GPIO_ACTIVE_HIGH>;
216		enable-active-high;
217
218		pinctrl-0 = <&usb0_1p8_reg_en>;
219		pinctrl-names = "default";
220
221		regulator-boot-on;
222	};
223
224	vreg_vdd33_rtmr: regulator-vdd33-rtmr {
225		compatible = "regulator-fixed";
226
227		regulator-name = "VDD33_RTMR";
228		regulator-min-microvolt = <3300000>;
229		regulator-max-microvolt = <3300000>;
230
231		gpio = <&pm8550_gpios 11 GPIO_ACTIVE_HIGH>;
232		enable-active-high;
233
234		pinctrl-0 = <&usb0_3p3_reg_en>;
235		pinctrl-names = "default";
236
237		regulator-boot-on;
238	};
239
240	vreg_wcn_0p95: regulator-wcn-0p95 {
241		compatible = "regulator-fixed";
242
243		regulator-name = "VREG_WCN_0P95";
244		regulator-min-microvolt = <950000>;
245		regulator-max-microvolt = <950000>;
246
247		vin-supply = <&vreg_wifi_3v3>;
248	};
249
250	vreg_wifi_3v3: regulator-wcn-3p3 {
251		compatible = "regulator-fixed";
252
253		regulator-name = "WIFI_3V3";
254		regulator-min-microvolt = <3300000>;
255		regulator-max-microvolt = <3300000>;
256
257		gpio = <&tlmm 214 GPIO_ACTIVE_HIGH>;
258		enable-active-high;
259
260		pinctrl-0 = <&wcn_sw_en>;
261		pinctrl-names = "default";
262	};
263
264	vreg_wifi_1v8: regulator-wifi-1v8 {
265		compatible = "regulator-fixed";
266
267		regulator-name = "WIFI_1V8";
268		regulator-min-microvolt = <1800000>;
269		regulator-max-microvolt = <1800000>;
270
271		vin-supply = <&vreg_l15b>;
272	};
273
274	reserved-memory {
275		linux,cma {
276			compatible = "shared-dma-pool";
277			size = <0x0 0x8000000>;
278			reusable;
279			linux,cma-default;
280		};
281	};
282
283	sound {
284		compatible = "qcom,x1e80100-sndcard";
285		model = "X1E80100-LENOVO-IdeaCentre-Mini";
286		audio-routing = "IN1_HPHL", "HPHL_OUT",
287				"IN2_HPHR", "HPHR_OUT",
288				"AMIC2", "MIC BIAS2",
289				"TX SWR_INPUT1", "ADC2_OUTPUT";
290
291		wcd-playback-dai-link {
292			link-name = "WCD Playback";
293
294			cpu {
295				sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
296			};
297
298			codec {
299				sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>;
300			};
301
302			platform {
303				sound-dai = <&q6apm>;
304			};
305		};
306
307		wcd-capture-dai-link {
308			link-name = "WCD Capture";
309
310			cpu {
311				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
312			};
313
314			codec {
315				sound-dai = <&wcd938x 1>, <&swr2 1>, <&lpass_txmacro 0>;
316			};
317
318			platform {
319				sound-dai = <&q6apm>;
320			};
321		};
322
323		displayport-0-dai-link {
324			link-name = "DisplayPort0 Playback";
325
326			codec {
327				sound-dai = <&mdss_dp0>;
328			};
329
330			cpu {
331				sound-dai = <&q6apmbedai DISPLAY_PORT_RX_0>;
332			};
333
334			platform {
335				sound-dai = <&q6apm>;
336			};
337		};
338
339		displayport-1-dai-link {
340			link-name = "DisplayPort1 Playback";
341
342			codec {
343				sound-dai = <&mdss_dp1>;
344			};
345
346			cpu {
347				sound-dai = <&q6apmbedai DISPLAY_PORT_RX_1>;
348			};
349
350			platform {
351				sound-dai = <&q6apm>;
352			};
353		};
354
355		displayport-2-dai-link {
356			link-name = "DisplayPort2 Playback";
357
358			codec {
359				sound-dai = <&mdss_dp2>;
360			};
361
362			cpu {
363				sound-dai = <&q6apmbedai DISPLAY_PORT_RX_2>;
364			};
365
366			platform {
367				sound-dai = <&q6apm>;
368			};
369		};
370	};
371
372	wcn7850-pmu {
373		compatible = "qcom,wcn7850-pmu";
374
375		vdd-supply = <&vreg_wcn_0p95>;
376		vddio-supply = <&vreg_l15b>;
377		vddaon-supply = <&vreg_wcn_0p95>;
378		vdddig-supply = <&vreg_wcn_0p95>;
379		vddrfa1p2-supply = <&vreg_wifi_1v8>;
380		vddrfa1p8-supply = <&vreg_wifi_1v8>;
381
382		wlan-enable-gpios = <&tlmm 117 GPIO_ACTIVE_HIGH>;
383		bt-enable-gpios = <&tlmm 116 GPIO_ACTIVE_HIGH>;
384
385		pinctrl-0 = <&wcn_wlan_bt_en>;
386		pinctrl-names = "default";
387
388		regulators {
389			vreg_pmu_rfa_cmn: ldo0 {
390				regulator-name = "vreg_pmu_rfa_cmn";
391			};
392
393			vreg_pmu_aon_0p59: ldo1 {
394				regulator-name = "vreg_pmu_aon_0p59";
395			};
396
397			vreg_pmu_wlcx_0p8: ldo2 {
398				regulator-name = "vreg_pmu_wlcx_0p8";
399			};
400
401			vreg_pmu_wlmx_0p85: ldo3 {
402				regulator-name = "vreg_pmu_wlmx_0p85";
403			};
404
405			vreg_pmu_btcmx_0p85: ldo4 {
406				regulator-name = "vreg_pmu_btcmx_0p85";
407			};
408
409			vreg_pmu_rfa_0p8: ldo5 {
410				regulator-name = "vreg_pmu_rfa_0p8";
411			};
412
413			vreg_pmu_rfa_1p2: ldo6 {
414				regulator-name = "vreg_pmu_rfa_1p2";
415			};
416
417			vreg_pmu_rfa_1p8: ldo7 {
418				regulator-name = "vreg_pmu_rfa_1p8";
419			};
420
421			vreg_pmu_pcie_0p9: ldo8 {
422				regulator-name = "vreg_pmu_pcie_0p9";
423			};
424
425			vreg_pmu_pcie_1p8: ldo9 {
426				regulator-name = "vreg_pmu_pcie_1p8";
427			};
428		};
429	};
430};
431
432&apps_rsc {
433	regulators-0 {
434		compatible = "qcom,pm8550-rpmh-regulators";
435		qcom,pmic-id = "b";
436
437		vreg_bob1: bob1 {
438			regulator-name = "vreg_bob1";
439			regulator-min-microvolt = <3008000>;
440			regulator-max-microvolt = <3960000>;
441			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
442		};
443
444		vreg_l2b: ldo2 {
445			regulator-name = "VREG_L2B";
446			regulator-min-microvolt = <3072000>;
447			regulator-max-microvolt = <3072000>;
448			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
449		};
450
451		vreg_l4b: ldo4 {
452			regulator-name = "VREG_L4B";
453			regulator-min-microvolt = <1800000>;
454			regulator-max-microvolt = <1800000>;
455			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
456		};
457
458		vreg_l13b: ldo13 {
459			regulator-name = "VREG_L13B";
460			regulator-min-microvolt = <3072000>;
461			regulator-max-microvolt = <3072000>;
462			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
463		};
464
465		vreg_l15b: ldo15 {
466			regulator-name = "VREG_L15B";
467			regulator-min-microvolt = <1800000>;
468			regulator-max-microvolt = <1800000>;
469			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
470			regulator-always-on;
471		};
472
473		vreg_l16b: ldo16 {
474			regulator-name = "VREG_L16B";
475			regulator-min-microvolt = <2504000>;
476			regulator-max-microvolt = <2504000>;
477			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
478		};
479
480	};
481
482	regulators-1 {
483		compatible = "qcom,pm8550ve-rpmh-regulators";
484		qcom,pmic-id = "c";
485
486		vreg_l3c: ldo3 {
487			regulator-name = "VREG_L3C";
488			regulator-min-microvolt = <912000>;
489			regulator-max-microvolt = <912000>;
490			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
491		};
492	};
493
494	regulators-2 {
495		compatible = "qcom,pmc8380-rpmh-regulators";
496		qcom,pmic-id = "d";
497
498		vreg_l1d: ldo1 {
499			regulator-name = "VREG_L1D";
500			regulator-min-microvolt = <880000>;
501			regulator-max-microvolt = <920000>;
502			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
503		};
504
505		vreg_l2d: ldo2 {
506			regulator-name = "VREG_L2D";
507			regulator-min-microvolt = <912000>;
508			regulator-max-microvolt = <912000>;
509			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
510		};
511
512		vreg_l3d: ldo3 {
513			regulator-name = "VREG_L3D";
514			regulator-min-microvolt = <1800000>;
515			regulator-max-microvolt = <1800000>;
516			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
517		};
518	};
519
520	regulators-3 {
521		compatible = "qcom,pmc8380-rpmh-regulators";
522		qcom,pmic-id = "e";
523
524		vreg_l2e: ldo2 {
525			regulator-name = "VREG_L2E";
526			regulator-min-microvolt = <880000>;
527			regulator-max-microvolt = <880000>;
528			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
529		};
530
531		vreg_l3e: ldo3 {
532			regulator-name = "VREG_L3E";
533			regulator-min-microvolt = <1200000>;
534			regulator-max-microvolt = <1200000>;
535			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
536		};
537	};
538
539	regulators-4 {
540		compatible = "qcom,pm8550ve-rpmh-regulators";
541		qcom,pmic-id = "i";
542
543		vreg_l3i: ldo3 {
544			regulator-name = "VREG_L3I";
545			regulator-min-microvolt = <880000>;
546			regulator-max-microvolt = <920000>;
547			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
548		};
549	};
550
551	regulators-5 {
552		compatible = "qcom,pm8550ve-rpmh-regulators";
553		qcom,pmic-id = "j";
554
555		vreg_l1j: ldo1 {
556			regulator-name = "VREG_L1J";
557			regulator-min-microvolt = <912000>;
558			regulator-max-microvolt = <912000>;
559			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
560		};
561
562		vreg_l2j: ldo2 {
563			regulator-name = "VREG_L2J";
564			regulator-min-microvolt = <1256000>;
565			regulator-max-microvolt = <1256000>;
566			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
567		};
568
569		vreg_l3j: ldo3 {
570			regulator-name = "VREG_L3J";
571			regulator-min-microvolt = <880000>;
572			regulator-max-microvolt = <880000>;
573			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
574		};
575	};
576};
577
578&i2c3 {
579	clock-frequency = <400000>;
580
581	status = "okay";
582
583	typec-mux@8 {
584		compatible = "parade,ps8833", "parade,ps8830";
585		reg = <0x08>;
586
587		clocks = <&rpmhcc RPMH_RF_CLK3>;
588
589		vdd-supply = <&vreg_v0p9>;
590		vdd33-supply = <&vreg_vdd33_rtmr>;
591		vdd33-cap-supply = <&vreg_vdd33_rtmr>;
592		vddar-supply = <&vreg_v0p9>;
593		vddat-supply = <&vreg_v0p9>;
594		vddio-supply = <&vreg_vdd1v8>;
595
596		reset-gpios = <&pm8550_gpios 10 GPIO_ACTIVE_LOW>;
597
598		pinctrl-0 = <&usb0_reset_n>;
599		pinctrl-names = "default";
600
601		retimer-switch;
602		orientation-switch;
603
604		ports {
605			#address-cells = <1>;
606			#size-cells = <0>;
607
608			port@0 {
609				reg = <0>;
610
611				usb0_retimer_out: endpoint {
612					remote-endpoint = <&pmic_glink_port0_ss_in>;
613				};
614			};
615
616			port@1 {
617				reg = <1>;
618
619				usb0_retimer_in: endpoint {
620					remote-endpoint = <&usb_1_ss0_qmpphy_out>;
621				};
622			};
623
624			port@2 {
625				reg = <2>;
626
627				usb0_retimer_sbu_out: endpoint {
628					remote-endpoint = <&pmic_glink_port0_sbu_in>;
629				};
630			};
631		};
632	};
633};
634
635&i2c5 {
636	clock-frequency = <400000>;
637
638	status = "okay";
639
640	eusb3_repeater: redriver@47 {
641		compatible = "nxp,ptn3222";
642		reg = <0x47>;
643		#phy-cells = <0>;
644
645		vdd3v3-supply = <&vreg_l13b>;
646		vdd1v8-supply = <&vreg_l4b>;
647
648		reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
649
650		pinctrl-0 = <&eusb3_reset_n>;
651		pinctrl-names = "default";
652	};
653
654	eusb6_repeater: redriver@4f {
655		compatible = "nxp,ptn3222";
656		reg = <0x4f>;
657		#phy-cells = <0>;
658
659		vdd3v3-supply = <&vreg_l13b>;
660		vdd1v8-supply = <&vreg_l4b>;
661
662		reset-gpios = <&tlmm 184 GPIO_ACTIVE_LOW>;
663
664		pinctrl-0 = <&eusb6_reset_n>;
665		pinctrl-names = "default";
666	};
667};
668
669&iris {
670	firmware-name = "qcom/x1e80100/LENOVO/91B6/qcvss8380.mbn";
671
672	status = "okay";
673};
674
675&gpu {
676	status = "okay";
677};
678
679&gpu_zap_shader {
680	firmware-name = "qcom/x1e80100/LENOVO/91B6/qcdxkmsuc8380.mbn";
681};
682
683&mdss {
684	status = "okay";
685};
686
687&mdss_dp0 {
688	status = "okay";
689};
690
691&mdss_dp0_out {
692	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
693};
694
695&mdss_dp1 {
696	status = "okay";
697};
698
699&mdss_dp1_out {
700	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
701};
702
703&mdss_dp2 {
704	status = "okay";
705};
706
707&mdss_dp2_out {
708	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
709};
710
711&pcie3 {
712	pinctrl-0 = <&pcie3_default>;
713	pinctrl-names = "default";
714
715	vddpe-3v3-supply = <&vreg_nvme2_3p3>;
716
717	status = "okay";
718};
719
720&pcie3_phy {
721	vdda-phy-supply = <&vreg_l3c>;
722	vdda-pll-supply = <&vreg_l3e>;
723
724	status = "okay";
725};
726
727&pcie3_port0 {
728	reset-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
729	wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
730};
731
732&pcie4 {
733	pinctrl-0 = <&pcie4_default>;
734	pinctrl-names = "default";
735
736	status = "okay";
737};
738
739&pcie4_phy {
740	vdda-phy-supply = <&vreg_l3i>;
741	vdda-pll-supply = <&vreg_l3e>;
742
743	status = "okay";
744};
745
746&pcie4_port0 {
747	reset-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>;
748	wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
749
750	wifi@0 {
751		compatible = "pci17cb,1107";
752		reg = <0x10000 0x0 0x0 0x0 0x0>;
753
754		vddaon-supply = <&vreg_pmu_aon_0p59>;
755		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
756		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
757		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
758		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
759		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
760		vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
761		vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
762		vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
763	};
764};
765
766&pcie5 {
767	pinctrl-0 = <&pcie5_default>;
768	pinctrl-names = "default";
769
770	status = "okay";
771};
772
773&pcie5_phy {
774	vdda-phy-supply = <&vreg_l3i>;
775	vdda-pll-supply = <&vreg_l3e>;
776
777	status = "okay";
778};
779
780&pcie5_port0 {
781	reset-gpios = <&tlmm 149 GPIO_ACTIVE_LOW>;
782	wake-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>;
783};
784
785&pcie6a {
786	vddpe-3v3-supply = <&vreg_nvme1_3p3>;
787
788	pinctrl-0 = <&pcie6a_default>;
789	pinctrl-names = "default";
790
791	status = "okay";
792};
793
794&pcie6a_phy {
795	vdda-phy-supply = <&vreg_l1d>;
796	vdda-pll-supply = <&vreg_l2j>;
797
798	status = "okay";
799};
800
801&pcie6a_port0 {
802	reset-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>;
803	wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>;
804};
805
806&pmc8380_5_gpios {
807	usb0_pwr_1p15_reg_en: usb0-pwr-1p15-reg-en-state {
808		pins = "gpio8";
809		function = "normal";
810		power-source = <1>;
811		bias-disable;
812		input-disable;
813		output-enable;
814	};
815};
816
817&pm8550_gpios {
818	usb0_reset_n: usb0-reset-n-state {
819		pins = "gpio10";
820		function = "normal";
821		power-source = <1>;
822		bias-disable;
823		input-disable;
824		output-enable;
825	};
826
827	usb0_3p3_reg_en: usb0-3p3-reg-en-state {
828		pins = "gpio11";
829		function = "normal";
830		power-source = <1>;
831		bias-disable;
832		input-disable;
833		output-enable;
834	};
835};
836
837&pm8550ve_9_gpios {
838	usb0_1p8_reg_en: usb0-1p8-reg-en-state {
839		pins = "gpio8";
840		function = "normal";
841		power-source = <1>;
842		bias-disable;
843		input-disable;
844		output-enable;
845	};
846};
847
848&qupv3_0 {
849	status = "okay";
850};
851
852&qupv3_1 {
853	status = "okay";
854};
855
856&qupv3_2 {
857	status = "okay";
858};
859
860&remoteproc_adsp {
861	firmware-name = "qcom/x1e80100/LENOVO/91B6/qcadsp8380.mbn",
862			"qcom/x1e80100/LENOVO/91B6/adsp_dtbs.elf";
863
864	status = "okay";
865};
866
867&remoteproc_cdsp {
868	firmware-name = "qcom/x1e80100/LENOVO/91B6/qccdsp8380.mbn",
869			"qcom/x1e80100/LENOVO/91B6/cdsp_dtbs.elf";
870
871	status = "okay";
872};
873
874&smb2360_0 {
875	status = "okay";
876};
877
878&smb2360_0_eusb2_repeater {
879	vdd18-supply = <&vreg_l3d>;
880	vdd3-supply = <&vreg_l2b>;
881};
882
883&swr1 {
884	status = "okay";
885
886	/* WCD9385 RX */
887	wcd_rx: codec@0,4 {
888		compatible = "sdw20217010d00";
889		reg = <0 4>;
890		qcom,rx-port-mapping = <1 2 3 4 5>;
891	};
892};
893
894&swr2 {
895	status = "okay";
896
897	/* WCD9385 TX */
898	wcd_tx: codec@0,3 {
899		compatible = "sdw20217010d00";
900		reg = <0 3>;
901		qcom,tx-port-mapping = <2 2 3 4>;
902	};
903};
904
905&tlmm {
906	gpio-reserved-ranges = <44 4>,  /* SPI11 (TPM) */
907			       <76 4>,  /* SPI19 (TZ Protected) */
908			       <238 1>; /* UFS Reset */
909
910	eusb3_reset_n: eusb3-reset-n-state {
911		pins = "gpio6";
912		function = "gpio";
913		drive-strength = <2>;
914		bias-disable;
915		output-low;
916	};
917
918	nvme_reg_en: nvme-reg-en-state {
919		pins = "gpio18";
920		function = "gpio";
921		drive-strength = <2>;
922		bias-disable;
923	};
924
925	us_euro_hs_sel: us-euro-hs-sel-state {
926		pins = "gpio68";
927		function = "gpio";
928		bias-pull-down;
929		drive-strength = <2>;
930	};
931
932	wcn_wlan_bt_en: wcn-wlan-bt-en-state {
933		pins = "gpio116", "gpio117";
934		function = "gpio";
935		drive-strength = <2>;
936		bias-disable;
937	};
938
939	usb1_dp_hot_plug_detect: ub1-dp-hot-plug-detect-state {
940		pins = "gpio124";
941		function = "usb1_dp";
942		bias-disable;
943	};
944
945	usb2_dp_hot_plug_detect: usb2-dp-hot-plug-detect-state {
946		pins = "gpio126";
947		function = "usb2_dp";
948		bias-disable;
949	};
950
951	pcie3_default: pcie3-default-state {
952		clkreq-n-pins {
953			pins = "gpio144";
954			function = "pcie3_clk";
955			drive-strength = <2>;
956			bias-pull-up;
957		};
958
959		perst-n-pins {
960			pins = "gpio143";
961			function = "gpio";
962			drive-strength = <2>;
963			bias-pull-down;
964		};
965
966		wake-n-pins {
967			pins = "gpio145";
968			function = "gpio";
969			drive-strength = <2>;
970			bias-pull-up;
971		};
972	};
973
974	pcie4_default: pcie4-default-state {
975		clkreq-n-pins {
976			pins = "gpio147";
977			function = "pcie4_clk";
978			drive-strength = <2>;
979			bias-pull-up;
980		};
981
982		perst-n-pins {
983			pins = "gpio146";
984			function = "gpio";
985			drive-strength = <2>;
986			bias-disable;
987		};
988
989		wake-n-pins {
990			pins = "gpio148";
991			function = "gpio";
992			drive-strength = <2>;
993			bias-pull-up;
994		};
995	};
996
997	pcie5_default: pcie5-default-state {
998		clkreq-n-pins {
999			pins = "gpio150";
1000			function = "pcie5_clk";
1001			drive-strength = <2>;
1002			bias-pull-up;
1003		};
1004
1005		perst-n-pins {
1006			pins = "gpio149";
1007			function = "gpio";
1008			drive-strength = <2>;
1009			bias-disable;
1010		};
1011
1012		wake-n-pins {
1013			pins = "gpio151";
1014			function = "gpio";
1015			drive-strength = <2>;
1016			bias-pull-up;
1017		};
1018	};
1019
1020	pcie6a_default: pcie6a-default-state {
1021		clkreq-n-pins {
1022			pins = "gpio153";
1023			function = "pcie6a_clk";
1024			drive-strength = <2>;
1025			bias-pull-up;
1026		};
1027
1028		perst-n-pins {
1029			pins = "gpio152";
1030			function = "gpio";
1031			drive-strength = <2>;
1032			bias-disable;
1033		};
1034
1035		wake-n-pins {
1036			pins = "gpio154";
1037			function = "gpio";
1038			drive-strength = <2>;
1039			bias-pull-up;
1040		};
1041	};
1042
1043	eusb6_reset_n: eusb6-reset-n-state {
1044		pins = "gpio184";
1045		function = "gpio";
1046		drive-strength = <2>;
1047		bias-disable;
1048		output-low;
1049	};
1050
1051	wcd_default: wcd-reset-n-active-state {
1052		pins = "gpio191";
1053		function = "gpio";
1054		drive-strength = <16>;
1055		bias-disable;
1056		output-low;
1057	};
1058
1059	wcn_sw_en: wcn-sw-en-state {
1060		pins = "gpio214";
1061		function = "gpio";
1062		drive-strength = <2>;
1063		bias-disable;
1064	};
1065};
1066
1067&uart14 {
1068	status = "okay";
1069
1070	bluetooth {
1071		compatible = "qcom,wcn7850-bt";
1072		max-speed = <3200000>;
1073
1074		vddaon-supply = <&vreg_pmu_aon_0p59>;
1075		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
1076		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
1077		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
1078		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
1079		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
1080		vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
1081	};
1082};
1083
1084&usb_1_ss0 {
1085	dr_mode = "host";
1086
1087	status = "okay";
1088};
1089
1090&usb_1_ss0_dwc3_hs {
1091	remote-endpoint = <&pmic_glink_port0_hs_in>;
1092};
1093
1094&usb_1_ss0_hsphy {
1095	vdd-supply = <&vreg_l3j>;
1096	vdda12-supply = <&vreg_l2j>;
1097
1098	phys = <&smb2360_0_eusb2_repeater>;
1099
1100	status = "okay";
1101};
1102
1103&usb_1_ss0_qmpphy {
1104	vdda-phy-supply = <&vreg_l2j>;
1105	vdda-pll-supply = <&vreg_l1j>;
1106
1107	status = "okay";
1108};
1109
1110&usb_1_ss0_qmpphy_out {
1111	remote-endpoint = <&usb0_retimer_in>;
1112};
1113
1114&usb_1_ss1_qmpphy {
1115	vdda-phy-supply = <&vreg_l2j>;
1116	vdda-pll-supply = <&vreg_l2d>;
1117
1118	/delete-property/ mode-switch;
1119	/delete-property/ orientation-switch;
1120
1121	status = "okay";
1122
1123	ports {
1124		port@0 {
1125			#address-cells = <1>;
1126			#size-cells = <0>;
1127
1128			/delete-node/ endpoint;
1129
1130			usb_1_ss1_qmpphy_out_dp: endpoint@0 {
1131				reg = <0>;
1132
1133				data-lanes = <3 2 1 0>;
1134				remote-endpoint = <&dp_port_in>;
1135			};
1136		};
1137	};
1138};
1139
1140&usb_1_ss2_qmpphy {
1141	vdda-phy-supply = <&vreg_l2j>;
1142	vdda-pll-supply = <&vreg_l2d>;
1143
1144	/delete-property/ mode-switch;
1145	/delete-property/ orientation-switch;
1146
1147	status = "okay";
1148
1149	ports {
1150		port@0 {
1151			#address-cells = <1>;
1152			#size-cells = <0>;
1153
1154			/delete-node/ endpoint;
1155
1156			usb_1_ss2_qmpphy_out_dp: endpoint@0 {
1157				reg = <0>;
1158
1159				data-lanes = <3 2 1 0>;
1160				remote-endpoint = <&hdmi_bridge_in>;
1161			};
1162		};
1163	};
1164};
1165
1166&usb_mp {
1167	status = "okay";
1168};
1169
1170&usb_mp_hsphy0 {
1171	vdd-supply = <&vreg_l2e>;
1172	vdda12-supply = <&vreg_l3e>;
1173
1174	phys = <&eusb3_repeater>;
1175
1176	status = "okay";
1177};
1178
1179&usb_mp_hsphy1 {
1180	vdd-supply = <&vreg_l2e>;
1181	vdda12-supply = <&vreg_l3e>;
1182
1183	phys = <&eusb6_repeater>;
1184
1185	status = "okay";
1186};
1187
1188&usb_mp_qmpphy0 {
1189	vdda-phy-supply = <&vreg_l3e>;
1190	vdda-pll-supply = <&vreg_l3c>;
1191
1192	status = "okay";
1193};
1194
1195&usb_mp_qmpphy1 {
1196	vdda-phy-supply = <&vreg_l3e>;
1197	vdda-pll-supply = <&vreg_l3c>;
1198
1199	status = "okay";
1200};
1201