xref: /linux/arch/arm64/boot/dts/qcom/lemans-evk.dts (revision 53597deca0e38c30e6cd4ba2114fa42d2bcd85bb)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2024-2025, Qualcomm Innovation Center, Inc. All rights reserved.
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/pwm/pwm.h>
10#include <dt-bindings/sound/qcom,q6afe.h>
11#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
12
13#include "lemans.dtsi"
14#include "lemans-pmics.dtsi"
15
16/ {
17	model = "Qualcomm Technologies, Inc. Lemans EVK";
18	compatible = "qcom,lemans-evk", "qcom,qcs9100", "qcom,sa8775p";
19
20	aliases {
21		ethernet0 = &ethernet0;
22		mmc1 = &sdhc;
23		serial0 = &uart10;
24		serial2 = &uart0;
25	};
26
27	dmic: audio-codec-0 {
28		compatible = "dmic-codec";
29		#sound-dai-cells = <0>;
30		num-channels = <1>;
31	};
32
33	max98357a: audio-codec-1 {
34		compatible = "maxim,max98357a";
35		#sound-dai-cells = <0>;
36	};
37
38	chosen {
39		stdout-path = "serial0:115200n8";
40	};
41
42	connector-0 {
43		compatible = "usb-c-connector";
44		label = "USB0-Type-C";
45		data-role = "dual";
46		power-role = "dual";
47
48		vbus-supply = <&usb0_vbus>;
49
50		ports {
51			#address-cells = <1>;
52			#size-cells = <0>;
53
54			port@0 {
55				reg = <0>;
56
57				usb0_con_hs_ep: endpoint {
58					remote-endpoint = <&usb_0_dwc3_hs>;
59				};
60			};
61
62			port@1 {
63				reg = <1>;
64
65				usb0_con_ss_ep: endpoint {
66					remote-endpoint = <&hd3ss3220_in_ep>;
67				};
68			};
69		};
70	};
71
72	connector-2 {
73		compatible = "gpio-usb-b-connector", "usb-b-connector";
74		label = "micro-USB";
75		type = "micro";
76
77		id-gpios = <&pmm8654au_2_gpios 11 GPIO_ACTIVE_HIGH>;
78		vbus-gpios = <&expander3 3 GPIO_ACTIVE_HIGH>;
79		vbus-supply = <&usb2_vbus>;
80
81		pinctrl-0 = <&usb2_id>;
82		pinctrl-names = "default";
83
84		port {
85			usb2_con_hs_ep: endpoint {
86				remote-endpoint = <&usb_2_dwc3_hs>;
87			};
88		};
89	};
90
91	edp0-connector {
92		compatible = "dp-connector";
93		label = "EDP0";
94		type = "mini";
95
96		port {
97			edp0_connector_in: endpoint {
98				remote-endpoint = <&mdss0_dp0_out>;
99			};
100		};
101	};
102
103	edp1-connector {
104		compatible = "dp-connector";
105		label = "EDP1";
106		type = "mini";
107
108		port {
109			edp1_connector_in: endpoint {
110				remote-endpoint = <&mdss0_dp1_out>;
111			};
112		};
113	};
114
115	sound {
116		compatible = "qcom,qcs9100-sndcard";
117		model = "LEMANS-EVK";
118
119		pinctrl-0 = <&hs0_mi2s_active>, <&hs2_mi2s_active>;
120		pinctrl-names = "default";
121
122		hs0-mi2s-playback-dai-link {
123			link-name = "HS0 MI2S Playback";
124
125			codec {
126				sound-dai = <&max98357a>;
127			};
128
129			cpu {
130				sound-dai = <&q6apmbedai PRIMARY_MI2S_RX>;
131			};
132
133			platform {
134				sound-dai = <&q6apm>;
135			};
136		};
137
138		hs2-mi2s-capture-dai-link {
139			link-name = "HS2 MI2S Capture";
140
141			codec {
142				sound-dai = <&dmic>;
143			};
144
145			cpu {
146				sound-dai = <&q6apmbedai TERTIARY_MI2S_TX>;
147			};
148
149			platform {
150				sound-dai = <&q6apm>;
151			};
152		};
153	};
154
155	usb0_vbus: regulator-usb0-vbus {
156		compatible = "regulator-fixed";
157		regulator-name = "usb0_vbus";
158		gpio = <&expander1 2 GPIO_ACTIVE_HIGH>;
159		regulator-min-microvolt = <5000000>;
160		regulator-max-microvolt = <5000000>;
161		enable-active-high;
162	};
163
164	usb2_vbus: regulator-usb2-vbus {
165		compatible = "regulator-fixed";
166		regulator-name = "usb2_vbus";
167		gpio = <&pmm8654au_1_gpios 9 GPIO_ACTIVE_HIGH>;
168		regulator-min-microvolt = <5000000>;
169		regulator-max-microvolt = <5000000>;
170		enable-active-high;
171	};
172
173	vmmc_sdc: regulator-vmmc-sdc {
174		compatible = "regulator-fixed";
175
176		regulator-name = "vmmc_sdc";
177		regulator-min-microvolt = <2950000>;
178		regulator-max-microvolt = <2950000>;
179	};
180
181	vreg_sdc: regulator-vreg-sdc {
182		compatible = "regulator-gpio";
183
184		regulator-name = "vreg_sdc";
185		regulator-type = "voltage";
186		regulator-min-microvolt = <1800000>;
187		regulator-max-microvolt = <2950000>;
188
189		gpios = <&expander1 7 GPIO_ACTIVE_HIGH>;
190		states = <1800000 1>, <2950000 0>;
191
192		startup-delay-us = <100>;
193	};
194};
195
196&apps_rsc {
197	regulators-0 {
198		compatible = "qcom,pmm8654au-rpmh-regulators";
199		qcom,pmic-id = "a";
200
201		vreg_s4a: smps4 {
202			regulator-name = "vreg_s4a";
203			regulator-min-microvolt = <1800000>;
204			regulator-max-microvolt = <1816000>;
205			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
206		};
207
208		vreg_s5a: smps5 {
209			regulator-name = "vreg_s5a";
210			regulator-min-microvolt = <1850000>;
211			regulator-max-microvolt = <1996000>;
212			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
213		};
214
215		vreg_s9a: smps9 {
216			regulator-name = "vreg_s9a";
217			regulator-min-microvolt = <535000>;
218			regulator-max-microvolt = <1120000>;
219			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
220		};
221
222		vreg_l4a: ldo4 {
223			regulator-name = "vreg_l4a";
224			regulator-min-microvolt = <788000>;
225			regulator-max-microvolt = <1050000>;
226			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
227			regulator-allow-set-load;
228			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
229						   RPMH_REGULATOR_MODE_HPM>;
230		};
231
232		vreg_l5a: ldo5 {
233			regulator-name = "vreg_l5a";
234			regulator-min-microvolt = <870000>;
235			regulator-max-microvolt = <950000>;
236			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
237			regulator-allow-set-load;
238			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
239						   RPMH_REGULATOR_MODE_HPM>;
240		};
241
242		vreg_l6a: ldo6 {
243			regulator-name = "vreg_l6a";
244			regulator-min-microvolt = <870000>;
245			regulator-max-microvolt = <970000>;
246			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
247			regulator-allow-set-load;
248			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
249						   RPMH_REGULATOR_MODE_HPM>;
250		};
251
252		vreg_l7a: ldo7 {
253			regulator-name = "vreg_l7a";
254			regulator-min-microvolt = <720000>;
255			regulator-max-microvolt = <950000>;
256			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
257			regulator-allow-set-load;
258			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
259						   RPMH_REGULATOR_MODE_HPM>;
260		};
261
262		vreg_l8a: ldo8 {
263			regulator-name = "vreg_l8a";
264			regulator-min-microvolt = <2504000>;
265			regulator-max-microvolt = <3300000>;
266			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
267			regulator-allow-set-load;
268			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
269						   RPMH_REGULATOR_MODE_HPM>;
270		};
271
272		vreg_l9a: ldo9 {
273			regulator-name = "vreg_l9a";
274			regulator-min-microvolt = <2970000>;
275			regulator-max-microvolt = <3544000>;
276			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
277			regulator-allow-set-load;
278			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
279						   RPMH_REGULATOR_MODE_HPM>;
280		};
281	};
282
283	regulators-1 {
284		compatible = "qcom,pmm8654au-rpmh-regulators";
285		qcom,pmic-id = "c";
286
287		vreg_l1c: ldo1 {
288			regulator-name = "vreg_l1c";
289			regulator-min-microvolt = <1140000>;
290			regulator-max-microvolt = <1260000>;
291			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
292			regulator-allow-set-load;
293			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
294						   RPMH_REGULATOR_MODE_HPM>;
295		};
296
297		vreg_l2c: ldo2 {
298			regulator-name = "vreg_l2c";
299			regulator-min-microvolt = <900000>;
300			regulator-max-microvolt = <1100000>;
301			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
302			regulator-allow-set-load;
303			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
304						   RPMH_REGULATOR_MODE_HPM>;
305		};
306
307		vreg_l3c: ldo3 {
308			regulator-name = "vreg_l3c";
309			regulator-min-microvolt = <1100000>;
310			regulator-max-microvolt = <1300000>;
311			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
312			regulator-allow-set-load;
313			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
314						   RPMH_REGULATOR_MODE_HPM>;
315		};
316
317		vreg_l4c: ldo4 {
318			regulator-name = "vreg_l4c";
319			regulator-min-microvolt = <1200000>;
320			regulator-max-microvolt = <1200000>;
321			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
322			regulator-allow-set-load;
323			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
324						   RPMH_REGULATOR_MODE_HPM>;
325		};
326
327		vreg_l5c: ldo5 {
328			regulator-name = "vreg_l5c";
329			regulator-min-microvolt = <1100000>;
330			regulator-max-microvolt = <1300000>;
331			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
332			regulator-allow-set-load;
333			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
334						   RPMH_REGULATOR_MODE_HPM>;
335		};
336
337		vreg_l6c: ldo6 {
338			regulator-name = "vreg_l6c";
339			regulator-min-microvolt = <1620000>;
340			regulator-max-microvolt = <1980000>;
341			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
342			regulator-allow-set-load;
343			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
344						   RPMH_REGULATOR_MODE_HPM>;
345		};
346
347		vreg_l7c: ldo7 {
348			regulator-name = "vreg_l7c";
349			regulator-min-microvolt = <1620000>;
350			regulator-max-microvolt = <2000000>;
351			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
352			regulator-allow-set-load;
353			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
354						   RPMH_REGULATOR_MODE_HPM>;
355		};
356
357		vreg_l8c: ldo8 {
358			regulator-name = "vreg_l8c";
359			regulator-min-microvolt = <2400000>;
360			regulator-max-microvolt = <3300000>;
361			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
362			regulator-allow-set-load;
363			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
364						   RPMH_REGULATOR_MODE_HPM>;
365		};
366
367		vreg_l9c: ldo9 {
368			regulator-name = "vreg_l9c";
369			regulator-min-microvolt = <1650000>;
370			regulator-max-microvolt = <2700000>;
371			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
372			regulator-allow-set-load;
373			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
374						   RPMH_REGULATOR_MODE_HPM>;
375		};
376	};
377
378	regulators-2 {
379		compatible = "qcom,pmm8654au-rpmh-regulators";
380		qcom,pmic-id = "e";
381
382		vreg_s4e: smps4 {
383			regulator-name = "vreg_s4e";
384			regulator-min-microvolt = <970000>;
385			regulator-max-microvolt = <1520000>;
386			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
387		};
388
389		vreg_s7e: smps7 {
390			regulator-name = "vreg_s7e";
391			regulator-min-microvolt = <1010000>;
392			regulator-max-microvolt = <1170000>;
393			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
394		};
395
396		vreg_s9e: smps9 {
397			regulator-name = "vreg_s9e";
398			regulator-min-microvolt = <300000>;
399			regulator-max-microvolt = <570000>;
400			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
401		};
402
403		vreg_l6e: ldo6 {
404			regulator-name = "vreg_l6e";
405			regulator-min-microvolt = <1280000>;
406			regulator-max-microvolt = <1450000>;
407			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
408			regulator-allow-set-load;
409			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
410						   RPMH_REGULATOR_MODE_HPM>;
411		};
412
413		vreg_l8e: ldo8 {
414			regulator-name = "vreg_l8e";
415			regulator-min-microvolt = <1800000>;
416			regulator-max-microvolt = <1950000>;
417			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
418			regulator-allow-set-load;
419			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
420						   RPMH_REGULATOR_MODE_HPM>;
421		};
422	};
423};
424
425&ethernet0 {
426	phy-handle = <&hsgmii_phy0>;
427	phy-mode = "2500base-x";
428
429	pinctrl-0 = <&ethernet0_default>;
430	pinctrl-names = "default";
431
432	snps,mtl-rx-config = <&mtl_rx_setup>;
433	snps,mtl-tx-config = <&mtl_tx_setup>;
434
435	nvmem-cells = <&mac_addr0>;
436	nvmem-cell-names = "mac-address";
437
438	status = "okay";
439
440	mdio {
441		compatible = "snps,dwmac-mdio";
442		#address-cells = <1>;
443		#size-cells = <0>;
444
445		hsgmii_phy0: ethernet-phy@1c {
446			compatible = "ethernet-phy-id004d.d101";
447			reg = <0x1c>;
448			reset-gpios = <&pmm8654au_2_gpios 8 GPIO_ACTIVE_LOW>;
449			reset-assert-us = <11000>;
450			reset-deassert-us = <70000>;
451		};
452	};
453
454	mtl_rx_setup: rx-queues-config {
455		snps,rx-queues-to-use = <4>;
456		snps,rx-sched-sp;
457
458		queue0 {
459			snps,dcb-algorithm;
460			snps,map-to-dma-channel = <0x0>;
461			snps,route-up;
462			snps,priority = <0x1>;
463		};
464
465		queue1 {
466			snps,dcb-algorithm;
467			snps,map-to-dma-channel = <0x1>;
468			snps,route-ptp;
469		};
470
471		queue2 {
472			snps,avb-algorithm;
473			snps,map-to-dma-channel = <0x2>;
474			snps,route-avcp;
475		};
476
477		queue3 {
478			snps,avb-algorithm;
479			snps,map-to-dma-channel = <0x3>;
480			snps,priority = <0xc>;
481		};
482	};
483
484	mtl_tx_setup: tx-queues-config {
485		snps,tx-queues-to-use = <4>;
486
487		queue0 {
488			snps,dcb-algorithm;
489		};
490
491		queue1 {
492			snps,dcb-algorithm;
493		};
494
495		queue2 {
496			snps,avb-algorithm;
497			snps,send_slope = <0x1000>;
498			snps,idle_slope = <0x1000>;
499			snps,high_credit = <0x3e800>;
500			snps,low_credit = <0xffc18000>;
501		};
502
503		queue3 {
504			snps,avb-algorithm;
505			snps,send_slope = <0x1000>;
506			snps,idle_slope = <0x1000>;
507			snps,high_credit = <0x3e800>;
508			snps,low_credit = <0xffc18000>;
509		};
510	};
511};
512
513&gpi_dma0 {
514	status = "okay";
515};
516
517&gpi_dma1 {
518	status = "okay";
519};
520
521&gpi_dma2 {
522	status = "okay";
523};
524
525&gpu {
526	status = "okay";
527};
528
529&gpu_zap_shader {
530	firmware-name = "qcom/sa8775p/a663_zap.mbn";
531};
532
533&i2c11 {
534	status = "okay";
535
536	usb-typec@67 {
537		compatible = "ti,hd3ss3220";
538		reg = <0x67>;
539
540		interrupts-extended = <&pmm8654au_2_gpios 5 IRQ_TYPE_EDGE_FALLING>;
541
542		id-gpios = <&tlmm 50 GPIO_ACTIVE_HIGH>;
543
544		pinctrl-0 = <&usb_id>, <&usb0_intr_state>;
545		pinctrl-names = "default";
546
547		ports {
548			#address-cells = <1>;
549			#size-cells = <0>;
550
551			port@0 {
552				reg = <0>;
553
554				hd3ss3220_in_ep: endpoint {
555					remote-endpoint = <&usb0_con_ss_ep>;
556				};
557			};
558
559			port@1 {
560				reg = <1>;
561
562				hd3ss3220_out_ep: endpoint {
563					remote-endpoint = <&usb_0_dwc3_ss>;
564				};
565			};
566		};
567	};
568};
569
570&i2c18 {
571	status = "okay";
572
573	expander0: gpio@38 {
574		compatible = "ti,tca9538";
575		reg = <0x38>;
576		#gpio-cells = <2>;
577		gpio-controller;
578		#interrupt-cells = <2>;
579		interrupt-controller;
580		interrupts-extended = <&tlmm 138 IRQ_TYPE_LEVEL_LOW>;
581		pinctrl-0 = <&expander0_int>;
582		pinctrl-names = "default";
583	};
584
585	expander1: gpio@39 {
586		compatible = "ti,tca9538";
587		reg = <0x39>;
588		#gpio-cells = <2>;
589		gpio-controller;
590		#interrupt-cells = <2>;
591		interrupt-controller;
592		interrupts-extended = <&tlmm 19 IRQ_TYPE_LEVEL_LOW>;
593		pinctrl-0 = <&expander1_int>;
594		pinctrl-names = "default";
595	};
596
597	expander2: gpio@3a {
598		compatible = "ti,tca9538";
599		reg = <0x3a>;
600		#gpio-cells = <2>;
601		gpio-controller;
602		#interrupt-cells = <2>;
603		interrupt-controller;
604		interrupts-extended = <&tlmm 139 IRQ_TYPE_LEVEL_LOW>;
605		pinctrl-0 = <&expander2_int>;
606		pinctrl-names = "default";
607	};
608
609	expander3: gpio@3b {
610		compatible = "ti,tca9538";
611		reg = <0x3b>;
612		#gpio-cells = <2>;
613		gpio-controller;
614		#interrupt-cells = <2>;
615		interrupt-controller;
616		interrupts-extended = <&tlmm 39 IRQ_TYPE_LEVEL_LOW>;
617		pinctrl-0 = <&expander3_int>;
618		pinctrl-names = "default";
619	};
620
621	eeprom@50 {
622		compatible = "giantec,gt24c256c", "atmel,24c256";
623		reg = <0x50>;
624		pagesize = <64>;
625
626		nvmem-layout {
627			compatible = "fixed-layout";
628			#address-cells = <1>;
629			#size-cells = <1>;
630
631			mac_addr0: mac-addr@0 {
632				reg = <0x0 0x6>;
633			};
634		};
635	};
636};
637
638&i2c19 {
639	status = "okay";
640
641	fan_controller: fan@18 {
642		compatible = "ti,amc6821";
643		reg = <0x18>;
644		#pwm-cells = <2>;
645
646		fan {
647			pwms = <&fan_controller 40000 PWM_POLARITY_INVERTED>;
648		};
649	};
650};
651
652&iris {
653	firmware-name = "qcom/vpu/vpu30_p4_s6_16mb.mbn";
654
655	status = "okay";
656};
657
658&mdss0 {
659	status = "okay";
660};
661
662&mdss0_dp0 {
663	pinctrl-0 = <&dp0_hot_plug_det>;
664	pinctrl-names = "default";
665
666	status = "okay";
667};
668
669&mdss0_dp0_out {
670	data-lanes = <0 1 2 3>;
671	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
672
673	remote-endpoint = <&edp0_connector_in>;
674};
675
676&mdss0_dp0_phy {
677	vdda-phy-supply = <&vreg_l1c>;
678	vdda-pll-supply = <&vreg_l4a>;
679
680	status = "okay";
681};
682
683&mdss0_dp1 {
684	pinctrl-0 = <&dp1_hot_plug_det>;
685	pinctrl-names = "default";
686
687	status = "okay";
688};
689
690&mdss0_dp1_out {
691	data-lanes = <0 1 2 3>;
692	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
693
694	remote-endpoint = <&edp1_connector_in>;
695};
696
697&mdss0_dp1_phy {
698	vdda-phy-supply = <&vreg_l1c>;
699	vdda-pll-supply = <&vreg_l4a>;
700
701	status = "okay";
702};
703
704&pcie0 {
705	perst-gpios = <&tlmm 2 GPIO_ACTIVE_LOW>;
706	wake-gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
707
708	pinctrl-0 = <&pcie0_default_state>;
709	pinctrl-names = "default";
710
711	status = "okay";
712};
713
714&pcie0_phy {
715	vdda-phy-supply = <&vreg_l5a>;
716	vdda-pll-supply = <&vreg_l1c>;
717
718	status = "okay";
719};
720
721&pcie1 {
722	perst-gpios = <&tlmm 4 GPIO_ACTIVE_LOW>;
723	wake-gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
724
725	pinctrl-0 = <&pcie1_default_state>;
726	pinctrl-names = "default";
727
728	status = "okay";
729};
730
731&pcie1_phy {
732	vdda-phy-supply = <&vreg_l5a>;
733	vdda-pll-supply = <&vreg_l1c>;
734
735	status = "okay";
736};
737
738&pmm8654au_0_pon_resin {
739	linux,code = <KEY_VOLUMEDOWN>;
740	status = "okay";
741};
742
743&pmm8654au_2_gpios {
744	usb0_intr_state: usb0-intr-state {
745		pins = "gpio5";
746		function = "normal";
747		input-enable;
748		bias-pull-up;
749		power-source = <0>;
750	};
751
752	usb2_id: usb2-id-state {
753		pins = "gpio11";
754		function = "normal";
755		input-enable;
756		bias-pull-up;
757		power-source = <0>;
758	};
759};
760
761&qup_i2c19_default {
762	drive-strength = <2>;
763	bias-pull-up;
764};
765
766&qupv3_id_0 {
767	firmware-name = "qcom/sa8775p/qupv3fw.elf";
768	status = "okay";
769};
770
771&qupv3_id_1 {
772	firmware-name = "qcom/sa8775p/qupv3fw.elf";
773	status = "okay";
774};
775
776&qupv3_id_2 {
777	firmware-name = "qcom/sa8775p/qupv3fw.elf";
778	status = "okay";
779};
780
781&remoteproc_adsp {
782	firmware-name = "qcom/sa8775p/adsp.mbn";
783
784	status = "okay";
785};
786
787&remoteproc_cdsp0 {
788	firmware-name = "qcom/sa8775p/cdsp0.mbn";
789
790	status = "okay";
791};
792
793&remoteproc_cdsp1 {
794	firmware-name = "qcom/sa8775p/cdsp1.mbn";
795
796	status = "okay";
797};
798
799&remoteproc_gpdsp0 {
800	firmware-name = "qcom/sa8775p/gpdsp0.mbn";
801
802	status = "okay";
803};
804
805&remoteproc_gpdsp1 {
806	firmware-name = "qcom/sa8775p/gpdsp1.mbn";
807
808	status = "okay";
809};
810
811&sdhc {
812	vmmc-supply = <&vmmc_sdc>;
813	vqmmc-supply = <&vreg_sdc>;
814
815	pinctrl-0 = <&sdc_default>, <&sd_cd>;
816	pinctrl-1 = <&sdc_sleep>, <&sd_cd>;
817	pinctrl-names = "default", "sleep";
818
819	bus-width = <4>;
820	cd-gpios = <&tlmm 36 GPIO_ACTIVE_LOW>;
821	no-mmc;
822	no-sdio;
823
824	status = "okay";
825};
826
827&serdes0 {
828	phy-supply = <&vreg_l5a>;
829
830	status = "okay";
831};
832
833&sleep_clk {
834	clock-frequency = <32768>;
835};
836
837&spi16 {
838	status = "okay";
839
840	tpm@0 {
841		compatible = "st,st33htpm-spi", "tcg,tpm_tis-spi";
842		reg = <0>;
843		spi-max-frequency = <20000000>;
844	};
845};
846
847&tlmm {
848	ethernet0_default: ethernet0-default-state {
849		ethernet0_mdc: ethernet0-mdc-pins {
850			pins = "gpio8";
851			function = "emac0_mdc";
852			drive-strength = <16>;
853			bias-pull-up;
854		};
855
856		ethernet0_mdio: ethernet0-mdio-pins {
857			pins = "gpio9";
858			function = "emac0_mdio";
859			drive-strength = <16>;
860			bias-pull-up;
861		};
862	};
863
864	expander0_int: expander0-int-state {
865		pins = "gpio138";
866		function = "gpio";
867		bias-pull-up;
868	};
869
870	expander1_int: expander1-int-state {
871		pins = "gpio19";
872		function = "gpio";
873		bias-pull-up;
874	};
875
876	expander2_int: expander2-int-state {
877		pins = "gpio139";
878		function = "gpio";
879		bias-pull-up;
880	};
881
882	expander3_int: expander3-int-state {
883		pins = "gpio39";
884		function = "gpio";
885		bias-pull-up;
886	};
887
888	pcie0_default_state: pcie0-default-state {
889		clkreq-pins {
890			pins = "gpio1";
891			function = "pcie0_clkreq";
892			drive-strength = <2>;
893			bias-pull-up;
894		};
895
896		perst-pins {
897			pins = "gpio2";
898			function = "gpio";
899			drive-strength = <2>;
900			bias-pull-up;
901		};
902
903		wake-pins {
904			pins = "gpio0";
905			function = "gpio";
906			drive-strength = <2>;
907			bias-pull-up;
908		};
909	};
910
911	pcie1_default_state: pcie1-default-state {
912		clkreq-pins {
913			pins = "gpio3";
914			function = "pcie1_clkreq";
915			drive-strength = <2>;
916			bias-pull-up;
917		};
918
919		perst-pins {
920			pins = "gpio4";
921			function = "gpio";
922			drive-strength = <2>;
923			bias-pull-up;
924		};
925
926		wake-pins {
927			pins = "gpio5";
928			function = "gpio";
929			drive-strength = <2>;
930			bias-pull-up;
931		};
932	};
933
934	qup_i2c11_default: qup-i2c11-state {
935		pins = "gpio48", "gpio49";
936		function = "qup1_se4";
937		drive-strength = <2>;
938		bias-pull-up;
939	};
940
941	sd_cd: sd-cd-state {
942		pins = "gpio36";
943		function = "gpio";
944		bias-pull-up;
945	};
946
947	usb_id: usb-id-state {
948		pins = "gpio50";
949		function = "gpio";
950		bias-pull-up;
951	};
952};
953
954&uart0 {
955	status = "okay";
956};
957
958&uart10 {
959	compatible = "qcom,geni-debug-uart";
960	pinctrl-0 = <&qup_uart10_default>;
961	pinctrl-names = "default";
962
963	status = "okay";
964};
965
966&ufs_mem_hc {
967	reset-gpios = <&tlmm 149 GPIO_ACTIVE_LOW>;
968	vcc-supply = <&vreg_l8a>;
969	vcc-max-microamp = <1100000>;
970	vccq-supply = <&vreg_l4c>;
971	vccq-max-microamp = <1200000>;
972
973	status = "okay";
974};
975
976&ufs_mem_phy {
977	vdda-phy-supply = <&vreg_l4a>;
978	vdda-pll-supply = <&vreg_l1c>;
979
980	status = "okay";
981};
982
983&usb_0 {
984	status = "okay";
985};
986
987&usb_0_dwc3_hs {
988	remote-endpoint = <&usb0_con_hs_ep>;
989};
990
991&usb_0_dwc3_ss {
992	remote-endpoint = <&hd3ss3220_out_ep>;
993};
994
995&usb_0_hsphy {
996	vdda-pll-supply = <&vreg_l7a>;
997	vdda18-supply = <&vreg_l6c>;
998	vdda33-supply = <&vreg_l9a>;
999
1000	status = "okay";
1001};
1002
1003&usb_0_qmpphy {
1004	vdda-phy-supply = <&vreg_l1c>;
1005	vdda-pll-supply = <&vreg_l7a>;
1006
1007	status = "okay";
1008};
1009
1010&usb_2 {
1011	status = "okay";
1012};
1013
1014&usb_2_dwc3_hs {
1015	remote-endpoint = <&usb2_con_hs_ep>;
1016};
1017
1018&usb_2_hsphy {
1019	vdda-pll-supply = <&vreg_l7a>;
1020	vdda18-supply = <&vreg_l6c>;
1021	vdda33-supply = <&vreg_l9a>;
1022
1023	status = "okay";
1024};
1025
1026&xo_board_clk {
1027	clock-frequency = <38400000>;
1028};
1029