xref: /linux/arch/arm64/boot/dts/qcom/sm8550-mtp.dts (revision 7115816b609a491e767d8ee63ed2727048f51b5f)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2022, Linaro Limited
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
9#include "sm8550.dtsi"
10#include "pm8010.dtsi"
11#include "pm8550.dtsi"
12#include "pm8550b.dtsi"
13#include "pm8550ve.dtsi"
14#include "pm8550vs.dtsi"
15#include "pmk8550.dtsi"
16#include "pmr735d_a.dtsi"
17#include "pmr735d_b.dtsi"
18
19/ {
20	model = "Qualcomm Technologies, Inc. SM8550 MTP";
21	compatible = "qcom,sm8550-mtp", "qcom,sm8550";
22	chassis-type = "handset";
23
24	aliases {
25		serial0 = &uart7;
26	};
27
28	wcd938x: audio-codec {
29		compatible = "qcom,wcd9385-codec";
30
31		pinctrl-names = "default";
32		pinctrl-0 = <&wcd_default>;
33
34		qcom,micbias1-microvolt = <1800000>;
35		qcom,micbias2-microvolt = <1800000>;
36		qcom,micbias3-microvolt = <1800000>;
37		qcom,micbias4-microvolt = <1800000>;
38		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
39		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
40		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
41		qcom,rx-device = <&wcd_rx>;
42		qcom,tx-device = <&wcd_tx>;
43
44		reset-gpios = <&tlmm 108 GPIO_ACTIVE_LOW>;
45
46		vdd-buck-supply = <&vreg_l15b_1p8>;
47		vdd-rxtx-supply = <&vreg_l15b_1p8>;
48		vdd-io-supply = <&vreg_l15b_1p8>;
49		vdd-mic-bias-supply = <&vreg_bob1>;
50
51		#sound-dai-cells = <1>;
52	};
53
54	chosen {
55		stdout-path = "serial0:115200n8";
56	};
57
58	pmic-glink {
59		compatible = "qcom,sm8550-pmic-glink", "qcom,pmic-glink";
60		#address-cells = <1>;
61		#size-cells = <0>;
62
63		connector@0 {
64			compatible = "usb-c-connector";
65			reg = <0>;
66			power-role = "dual";
67			data-role = "dual";
68
69			ports {
70				#address-cells = <1>;
71				#size-cells = <0>;
72
73				port@0 {
74					reg = <0>;
75
76					pmic_glink_hs_in: endpoint {
77						remote-endpoint = <&usb_1_dwc3_hs>;
78					};
79				};
80
81				port@1 {
82					reg = <1>;
83
84					pmic_glink_ss_in: endpoint {
85						remote-endpoint = <&usb_dp_qmpphy_out>;
86					};
87				};
88
89				port@2 {
90					reg = <2>;
91
92					pmic_glink_sbu: endpoint {
93						remote-endpoint = <&fsa4480_sbu_mux>;
94					};
95				};
96			};
97		};
98	};
99
100	sound {
101		compatible = "qcom,sm8550-sndcard", "qcom,sm8450-sndcard";
102		model = "SM8550-MTP";
103		audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
104				"SpkrRight IN", "WSA_SPK2 OUT",
105				"IN1_HPHL", "HPHL_OUT",
106				"IN2_HPHR", "HPHR_OUT",
107				"AMIC2", "MIC BIAS2",
108				"VA DMIC0", "MIC BIAS1",
109				"VA DMIC1", "MIC BIAS1",
110				"VA DMIC2", "MIC BIAS3",
111				"TX DMIC0", "MIC BIAS1",
112				"TX DMIC1", "MIC BIAS2",
113				"TX DMIC2", "MIC BIAS3",
114				"TX SWR_ADC1", "ADC2_OUTPUT";
115
116		wcd-playback-dai-link {
117			link-name = "WCD Playback";
118
119			cpu {
120				sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
121			};
122
123			codec {
124				sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>;
125			};
126
127			platform {
128				sound-dai = <&q6apm>;
129			};
130		};
131
132		wcd-capture-dai-link {
133			link-name = "WCD Capture";
134
135			cpu {
136				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
137			};
138
139			codec {
140				sound-dai = <&wcd938x 1>, <&swr2 0>, <&lpass_txmacro 0>;
141			};
142
143			platform {
144				sound-dai = <&q6apm>;
145			};
146		};
147
148		wsa-dai-link {
149			link-name = "WSA Playback";
150
151			cpu {
152				sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
153			};
154
155			codec {
156				sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&lpass_wsamacro 0>;
157			};
158
159			platform {
160				sound-dai = <&q6apm>;
161			};
162		};
163
164		va-dai-link {
165			link-name = "VA Capture";
166
167			cpu {
168				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
169			};
170
171			codec {
172				sound-dai = <&lpass_vamacro 0>;
173			};
174
175			platform {
176				sound-dai = <&q6apm>;
177			};
178		};
179	};
180
181	vph_pwr: vph-pwr-regulator {
182		compatible = "regulator-fixed";
183		regulator-name = "vph_pwr";
184		regulator-min-microvolt = <3700000>;
185		regulator-max-microvolt = <3700000>;
186
187		regulator-always-on;
188		regulator-boot-on;
189	};
190};
191
192&apps_rsc {
193	regulators-0 {
194		compatible = "qcom,pm8550-rpmh-regulators";
195		qcom,pmic-id = "b";
196
197		vdd-bob1-supply = <&vph_pwr>;
198		vdd-bob2-supply = <&vph_pwr>;
199		vdd-l1-l4-l10-supply = <&vreg_s6g_1p8>;
200		vdd-l2-l13-l14-supply = <&vreg_bob1>;
201		vdd-l3-supply = <&vreg_s4g_1p3>;
202		vdd-l5-l16-supply = <&vreg_bob1>;
203		vdd-l6-l7-supply = <&vreg_bob1>;
204		vdd-l8-l9-supply = <&vreg_bob1>;
205		vdd-l11-supply = <&vreg_s4g_1p3>;
206		vdd-l12-supply = <&vreg_s6g_1p8>;
207		vdd-l15-supply = <&vreg_s6g_1p8>;
208		vdd-l17-supply = <&vreg_bob2>;
209
210		vreg_bob1: bob1 {
211			regulator-name = "vreg_bob1";
212			regulator-min-microvolt = <3296000>;
213			regulator-max-microvolt = <3960000>;
214			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
215		};
216
217		vreg_bob2: bob2 {
218			regulator-name = "vreg_bob2";
219			regulator-min-microvolt = <2720000>;
220			regulator-max-microvolt = <3960000>;
221			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
222		};
223
224		vreg_l1b_1p8: ldo1 {
225			regulator-name = "vreg_l1b_1p8";
226			regulator-min-microvolt = <1800000>;
227			regulator-max-microvolt = <1800000>;
228			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
229		};
230
231		vreg_l2b_3p0: ldo2 {
232			regulator-name = "vreg_l2b_3p0";
233			regulator-min-microvolt = <3008000>;
234			regulator-max-microvolt = <3008000>;
235			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
236		};
237
238		vreg_l5b_3p1: ldo5 {
239			regulator-name = "vreg_l5b_3p1";
240			regulator-min-microvolt = <3104000>;
241			regulator-max-microvolt = <3104000>;
242			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
243		};
244
245		vreg_l6b_1p8: ldo6 {
246			regulator-name = "vreg_l6b_1p8";
247			regulator-min-microvolt = <1800000>;
248			regulator-max-microvolt = <3008000>;
249			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
250		};
251
252		vreg_l7b_1p8: ldo7 {
253			regulator-name = "vreg_l7b_1p8";
254			regulator-min-microvolt = <1800000>;
255			regulator-max-microvolt = <3008000>;
256			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
257		};
258
259		vreg_l8b_1p8: ldo8 {
260			regulator-name = "vreg_l8b_1p8";
261			regulator-min-microvolt = <1800000>;
262			regulator-max-microvolt = <3008000>;
263			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
264		};
265
266		vreg_l9b_2p9: ldo9 {
267			regulator-name = "vreg_l9b_2p9";
268			regulator-min-microvolt = <2960000>;
269			regulator-max-microvolt = <3008000>;
270			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
271		};
272
273		vreg_l11b_1p2: ldo11 {
274			regulator-name = "vreg_l11b_1p2";
275			regulator-min-microvolt = <1200000>;
276			regulator-max-microvolt = <1504000>;
277			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
278		};
279
280		vreg_l12b_1p8: ldo12 {
281			regulator-name = "vreg_l12b_1p8";
282			regulator-min-microvolt = <1800000>;
283			regulator-max-microvolt = <1800000>;
284			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
285		};
286
287		vreg_l13b_3p0: ldo13 {
288			regulator-name = "vreg_l13b_3p0";
289			regulator-min-microvolt = <3000000>;
290			regulator-max-microvolt = <3000000>;
291			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
292		};
293
294		vreg_l14b_3p2: ldo14 {
295			regulator-name = "vreg_l14b_3p2";
296			regulator-min-microvolt = <3200000>;
297			regulator-max-microvolt = <3200000>;
298			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
299		};
300
301		vreg_l15b_1p8: ldo15 {
302			regulator-name = "vreg_l15b_1p8";
303			regulator-min-microvolt = <1800000>;
304			regulator-max-microvolt = <1800000>;
305			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
306		};
307
308		vreg_l16b_2p8: ldo16 {
309			regulator-name = "vreg_l16b_2p8";
310			regulator-min-microvolt = <2800000>;
311			regulator-max-microvolt = <2800000>;
312			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
313		};
314
315		vreg_l17b_2p5: ldo17 {
316			regulator-name = "vreg_l17b_2p5";
317			regulator-min-microvolt = <2504000>;
318			regulator-max-microvolt = <2504000>;
319			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
320		};
321	};
322
323	regulators-1 {
324		compatible = "qcom,pm8550vs-rpmh-regulators";
325		qcom,pmic-id = "c";
326
327		vdd-l3-supply = <&vreg_s4e_0p9>;
328
329		vreg_l3c_0p91: ldo3 {
330			regulator-name = "vreg_l3c_0p9";
331			regulator-min-microvolt = <880000>;
332			regulator-max-microvolt = <912000>;
333			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
334		};
335	};
336
337	regulators-2 {
338		compatible = "qcom,pm8550vs-rpmh-regulators";
339		qcom,pmic-id = "d";
340
341		vdd-l1-supply = <&vreg_s4e_0p9>;
342
343		vreg_l1d_0p88: ldo1 {
344			regulator-name = "vreg_l1d_0p88";
345			regulator-min-microvolt = <880000>;
346			regulator-max-microvolt = <920000>;
347			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
348		};
349	};
350
351	regulators-3 {
352		compatible = "qcom,pm8550vs-rpmh-regulators";
353		qcom,pmic-id = "e";
354
355		vdd-l1-supply = <&vreg_s4e_0p9>;
356		vdd-l2-supply = <&vreg_s4e_0p9>;
357		vdd-l3-supply = <&vreg_s4g_1p3>;
358		vdd-s4-supply = <&vph_pwr>;
359		vdd-s5-supply = <&vph_pwr>;
360
361		vreg_s4e_0p9: smps4 {
362			regulator-name = "vreg_s4e_0p9";
363			regulator-min-microvolt = <904000>;
364			regulator-max-microvolt = <984000>;
365			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
366		};
367
368		vreg_s5e_1p1: smps5 {
369			regulator-name = "vreg_s5e_1p1";
370			regulator-min-microvolt = <1080000>;
371			regulator-max-microvolt = <1120000>;
372			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
373		};
374
375		vreg_l1e_0p88: ldo1 {
376			regulator-name = "vreg_l1e_0p88";
377			regulator-min-microvolt = <880000>;
378			regulator-max-microvolt = <880000>;
379			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
380		};
381
382		vreg_l2e_0p9: ldo2 {
383			regulator-name = "vreg_l2e_0p9";
384			regulator-min-microvolt = <904000>;
385			regulator-max-microvolt = <970000>;
386			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
387		};
388
389		vreg_l3e_1p2: ldo3 {
390			regulator-name = "vreg_l3e_1p2";
391			regulator-min-microvolt = <1200000>;
392			regulator-max-microvolt = <1200000>;
393			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
394		};
395	};
396
397	regulators-4 {
398		compatible = "qcom,pm8550ve-rpmh-regulators";
399		qcom,pmic-id = "f";
400
401		vdd-l1-supply = <&vreg_s4e_0p9>;
402		vdd-l2-supply = <&vreg_s4e_0p9>;
403		vdd-l3-supply = <&vreg_s4e_0p9>;
404		vdd-s4-supply = <&vph_pwr>;
405
406		vreg_s4f_0p5: smps4 {
407			regulator-name = "vreg_s4f_0p5";
408			regulator-min-microvolt = <500000>;
409			regulator-max-microvolt = <700000>;
410			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
411		};
412
413		vreg_l1f_0p9: ldo1 {
414			regulator-name = "vreg_l1f_0p9";
415			regulator-min-microvolt = <912000>;
416			regulator-max-microvolt = <912000>;
417			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
418		};
419
420		vreg_l2f_0p88: ldo2 {
421			regulator-name = "vreg_l2f_0p88";
422			regulator-min-microvolt = <880000>;
423			regulator-max-microvolt = <912000>;
424			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
425		};
426
427		vreg_l3f_0p91: ldo3 {
428			regulator-name = "vreg_l3f_0p91";
429			regulator-min-microvolt = <880000>;
430			regulator-max-microvolt = <912000>;
431			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
432		};
433	};
434
435	regulators-5 {
436		compatible = "qcom,pm8550vs-rpmh-regulators";
437		qcom,pmic-id = "g";
438
439		vdd-l1-supply = <&vreg_s4g_1p3>;
440		vdd-l2-supply = <&vreg_s4g_1p3>;
441		vdd-l3-supply = <&vreg_s4g_1p3>;
442		vdd-s1-supply = <&vph_pwr>;
443		vdd-s2-supply = <&vph_pwr>;
444		vdd-s3-supply = <&vph_pwr>;
445		vdd-s4-supply = <&vph_pwr>;
446		vdd-s5-supply = <&vph_pwr>;
447		vdd-s6-supply = <&vph_pwr>;
448
449		vreg_s1g_1p2: smps1 {
450			regulator-name = "vreg_s1g_1p2";
451			regulator-min-microvolt = <1200000>;
452			regulator-max-microvolt = <1300000>;
453			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
454		};
455
456		vreg_s2g_0p8: smps2 {
457			regulator-name = "vreg_s2g_0p8";
458			regulator-min-microvolt = <800000>;
459			regulator-max-microvolt = <1000000>;
460			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
461		};
462
463		vreg_s3g_0p7: smps3 {
464			regulator-name = "vreg_s3g_0p7";
465			regulator-min-microvolt = <300000>;
466			regulator-max-microvolt = <1004000>;
467			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
468		};
469
470		vreg_s4g_1p3: smps4 {
471			regulator-name = "vreg_s4g_1p3";
472			regulator-min-microvolt = <1200000>;
473			regulator-max-microvolt = <1352000>;
474			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
475		};
476
477		vreg_s5g_0p8: smps5 {
478			regulator-name = "vreg_s5g_0p8";
479			regulator-min-microvolt = <500000>;
480			regulator-max-microvolt = <1004000>;
481			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
482		};
483
484		vreg_s6g_1p8: smps6 {
485			regulator-name = "vreg_s6g_1p8";
486			regulator-min-microvolt = <1800000>;
487			regulator-max-microvolt = <2000000>;
488			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
489		};
490
491		vreg_l1g_1p2: ldo1 {
492			regulator-name = "vreg_l1g_1p2";
493			regulator-min-microvolt = <1200000>;
494			regulator-max-microvolt = <1200000>;
495			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
496		};
497
498		vreg_l2g_1p2: ldo2 {
499			regulator-name = "vreg_l2g_1p2";
500			regulator-min-microvolt = <1200000>;
501			regulator-max-microvolt = <1200000>;
502			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
503		};
504
505		vreg_l3g_1p2: ldo3 {
506			regulator-name = "vreg_l3g_1p2";
507			regulator-min-microvolt = <1200000>;
508			regulator-max-microvolt = <1200000>;
509			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
510		};
511	};
512};
513
514&i2c_master_hub_0 {
515	status = "okay";
516};
517
518&i2c_hub_2 {
519	status = "okay";
520
521	typec-mux@42 {
522		compatible = "fcs,fsa4480";
523		reg = <0x42>;
524
525		vcc-supply = <&vreg_bob1>;
526
527		mode-switch;
528		orientation-switch;
529
530		port {
531			fsa4480_sbu_mux: endpoint {
532				remote-endpoint = <&pmic_glink_sbu>;
533			};
534		};
535	};
536};
537
538&lpass_tlmm {
539	spkr_1_sd_n_active: spkr-1-sd-n-active-state {
540		pins = "gpio17";
541		function = "gpio";
542		drive-strength = <16>;
543		bias-disable;
544		output-low;
545	};
546
547	spkr_2_sd_n_active: spkr-2-sd-n-active-state {
548		pins = "gpio18";
549		function = "gpio";
550		drive-strength = <16>;
551		bias-disable;
552		output-low;
553	};
554};
555
556&mdss {
557	status = "okay";
558};
559
560&mdss_dsi0 {
561	vdda-supply = <&vreg_l3e_1p2>;
562	status = "okay";
563
564	panel@0 {
565		compatible = "visionox,vtdr6130";
566		reg = <0>;
567
568		pinctrl-names = "default", "sleep";
569		pinctrl-0 = <&sde_dsi_active>, <&sde_te_active>;
570		pinctrl-1 = <&sde_dsi_suspend>, <&sde_te_suspend>;
571
572		vddio-supply = <&vreg_l12b_1p8>;
573		vci-supply = <&vreg_l13b_3p0>;
574		vdd-supply = <&vreg_l11b_1p2>;
575
576		reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
577
578		port {
579			panel0_in: endpoint {
580				remote-endpoint = <&mdss_dsi0_out>;
581			};
582		};
583	};
584};
585
586&mdss_dsi0_out {
587	remote-endpoint = <&panel0_in>;
588	data-lanes = <0 1 2 3>;
589};
590
591&mdss_dsi0_phy {
592	vdds-supply = <&vreg_l1e_0p88>;
593	status = "okay";
594};
595
596&mdss_dp0 {
597	status = "okay";
598};
599
600&mdss_dp0_out {
601	data-lanes = <0 1>;
602	remote-endpoint = <&usb_dp_qmpphy_dp_in>;
603};
604
605&pcie_1_phy_aux_clk {
606	clock-frequency = <1000>;
607};
608
609&pcie0 {
610	wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
611	perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
612
613	pinctrl-names = "default";
614	pinctrl-0 = <&pcie0_default_state>;
615
616	status = "okay";
617};
618
619&pcie0_phy {
620	vdda-phy-supply = <&vreg_l1e_0p88>;
621	vdda-pll-supply = <&vreg_l3e_1p2>;
622
623	status = "okay";
624};
625
626&pcie1 {
627	wake-gpios = <&tlmm 99 GPIO_ACTIVE_HIGH>;
628	perst-gpios = <&tlmm 97 GPIO_ACTIVE_LOW>;
629
630	pinctrl-names = "default";
631	pinctrl-0 = <&pcie1_default_state>;
632
633	status = "okay";
634};
635
636&pcie1_phy {
637	vdda-phy-supply = <&vreg_l3c_0p91>;
638	vdda-pll-supply = <&vreg_l3e_1p2>;
639	vdda-qref-supply = <&vreg_l1e_0p88>;
640
641	status = "okay";
642};
643
644&pm8550_gpios {
645	sdc2_card_det_n: sdc2-card-det-state {
646		pins = "gpio12";
647		function = "normal";
648		input-enable;
649		output-disable;
650		bias-pull-up;
651		power-source = <1>; /* 1.8 V */
652	};
653};
654
655&pm8550b_eusb2_repeater {
656	vdd18-supply = <&vreg_l15b_1p8>;
657	vdd3-supply = <&vreg_l5b_3p1>;
658};
659
660&qupv3_id_0 {
661	status = "okay";
662};
663
664&remoteproc_adsp {
665	firmware-name = "qcom/sm8550/adsp.mbn",
666			"qcom/sm8550/adsp_dtb.mbn";
667	status = "okay";
668};
669
670&remoteproc_cdsp {
671	firmware-name = "qcom/sm8550/cdsp.mbn",
672			"qcom/sm8550/cdsp_dtb.mbn";
673	status = "okay";
674};
675
676&remoteproc_mpss {
677	firmware-name = "qcom/sm8550/modem.mbn",
678			"qcom/sm8550/modem_dtb.mbn";
679	status = "okay";
680};
681
682&sdhc_2 {
683	cd-gpios = <&pm8550_gpios 12 GPIO_ACTIVE_LOW>;
684	pinctrl-names = "default", "sleep";
685	pinctrl-0 = <&sdc2_default &sdc2_card_det_n>;
686	pinctrl-1 = <&sdc2_sleep &sdc2_card_det_n>;
687	vmmc-supply = <&vreg_l9b_2p9>;
688	vqmmc-supply = <&vreg_l8b_1p8>;
689	bus-width = <4>;
690	no-sdio;
691	no-mmc;
692	status = "okay";
693};
694
695&sleep_clk {
696	clock-frequency = <32000>;
697};
698
699&swr0 {
700	status = "okay";
701
702	/* WSA8845 */
703	left_spkr: speaker@0,0 {
704		compatible = "sdw20217020400";
705		reg = <0 0>;
706		pinctrl-names = "default";
707		pinctrl-0 = <&spkr_1_sd_n_active>;
708		powerdown-gpios = <&lpass_tlmm 17 GPIO_ACTIVE_LOW>;
709		#sound-dai-cells = <0>;
710		sound-name-prefix = "SpkrLeft";
711		vdd-1p8-supply = <&vreg_l15b_1p8>;
712		vdd-io-supply = <&vreg_l3g_1p2>;
713	};
714
715	/* WSA8845 */
716	right_spkr: speaker@0,1 {
717		compatible = "sdw20217020400";
718		reg = <0 1>;
719		pinctrl-names = "default";
720		pinctrl-0 = <&spkr_2_sd_n_active>;
721		powerdown-gpios = <&lpass_tlmm 18 GPIO_ACTIVE_LOW>;
722		#sound-dai-cells = <0>;
723		sound-name-prefix = "SpkrRight";
724		vdd-1p8-supply = <&vreg_l15b_1p8>;
725		vdd-io-supply = <&vreg_l3g_1p2>;
726	};
727};
728
729&swr1 {
730	status = "okay";
731
732	/* WCD9385 RX */
733	wcd_rx: codec@0,4 {
734		compatible = "sdw20217010d00";
735		reg = <0 4>;
736		qcom,rx-port-mapping = <1 2 3 4 5>;
737	};
738};
739
740&swr2 {
741	status = "okay";
742
743	/* WCD9385 TX */
744	wcd_tx: codec@0,3 {
745		compatible = "sdw20217010d00";
746		reg = <0 3>;
747		qcom,tx-port-mapping = <1 1 2 3>;
748	};
749};
750
751&tlmm {
752	gpio-reserved-ranges = <32 8>;
753
754	sde_dsi_active: sde-dsi-active-state {
755		pins = "gpio133";
756		function = "gpio";
757		drive-strength = <8>;
758		bias-disable;
759	};
760
761	sde_dsi_suspend: sde-dsi-suspend-state {
762		pins = "gpio133";
763		function = "gpio";
764		drive-strength = <2>;
765		bias-pull-down;
766	};
767
768	sde_te_active: sde-te-active-state {
769		pins = "gpio86";
770		function = "mdp_vsync";
771		drive-strength = <2>;
772		bias-pull-down;
773	};
774
775	sde_te_suspend: sde-te-suspend-state {
776		pins = "gpio86";
777		function = "mdp_vsync";
778		drive-strength = <2>;
779		bias-pull-down;
780	};
781
782	wcd_default: wcd-reset-n-active-state {
783		pins = "gpio108";
784		function = "gpio";
785		drive-strength = <16>;
786		bias-disable;
787		output-low;
788	};
789};
790
791&uart7 {
792	status = "okay";
793};
794
795&ufs_mem_hc {
796	reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
797	vcc-supply = <&vreg_l17b_2p5>;
798	vcc-max-microamp = <1300000>;
799	vccq-supply = <&vreg_l1g_1p2>;
800	vccq-max-microamp = <1200000>;
801	vdd-hba-supply = <&vreg_l3g_1p2>;
802
803	status = "okay";
804};
805
806&ufs_mem_phy {
807	vdda-phy-supply = <&vreg_l1d_0p88>;
808	vdda-pll-supply = <&vreg_l3e_1p2>;
809
810	status = "okay";
811};
812
813&usb_1 {
814	status = "okay";
815};
816
817&usb_1_dwc3 {
818	dr_mode = "otg";
819	usb-role-switch;
820};
821
822&usb_1_dwc3_hs {
823	remote-endpoint = <&pmic_glink_hs_in>;
824};
825
826&usb_1_dwc3_ss {
827	remote-endpoint = <&usb_dp_qmpphy_usb_ss_in>;
828};
829
830&usb_1_hsphy {
831	vdd-supply = <&vreg_l1e_0p88>;
832	vdda12-supply = <&vreg_l3e_1p2>;
833
834	phys = <&pm8550b_eusb2_repeater>;
835
836	status = "okay";
837};
838
839&usb_dp_qmpphy {
840	vdda-phy-supply = <&vreg_l3e_1p2>;
841	vdda-pll-supply = <&vreg_l3f_0p91>;
842
843	orientation-switch;
844
845	status = "okay";
846};
847
848&usb_dp_qmpphy_dp_in {
849	remote-endpoint = <&mdss_dp0_out>;
850};
851
852&usb_dp_qmpphy_out {
853	remote-endpoint = <&pmic_glink_ss_in>;
854};
855
856&usb_dp_qmpphy_usb_ss_in {
857	remote-endpoint = <&usb_1_dwc3_ss>;
858};
859
860&xo_board {
861	clock-frequency = <76800000>;
862};
863