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