xref: /linux/arch/arm64/boot/dts/qcom/sm8550-mtp.dts (revision df9c299371054cb725eef730fd0f1d0fe2ed6bb0)
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&iris {
676	status = "okay";
677};
678
679&lpass_tlmm {
680	spkr_1_sd_n_active: spkr-1-sd-n-active-state {
681		pins = "gpio17";
682		function = "gpio";
683		drive-strength = <16>;
684		bias-disable;
685		output-low;
686	};
687
688	spkr_2_sd_n_active: spkr-2-sd-n-active-state {
689		pins = "gpio18";
690		function = "gpio";
691		drive-strength = <16>;
692		bias-disable;
693		output-low;
694	};
695};
696
697&mdss {
698	status = "okay";
699};
700
701&mdss_dsi0 {
702	vdda-supply = <&vreg_l3e_1p2>;
703	status = "okay";
704
705	panel@0 {
706		compatible = "visionox,vtdr6130";
707		reg = <0>;
708
709		pinctrl-names = "default", "sleep";
710		pinctrl-0 = <&sde_dsi_active>, <&sde_te_active>;
711		pinctrl-1 = <&sde_dsi_suspend>, <&sde_te_suspend>;
712
713		vddio-supply = <&vreg_l12b_1p8>;
714		vci-supply = <&vreg_l13b_3p0>;
715		vdd-supply = <&vreg_l11b_1p2>;
716
717		reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
718
719		port {
720			panel0_in: endpoint {
721				remote-endpoint = <&mdss_dsi0_out>;
722			};
723		};
724	};
725};
726
727&mdss_dsi0_out {
728	remote-endpoint = <&panel0_in>;
729	data-lanes = <0 1 2 3>;
730};
731
732&mdss_dsi0_phy {
733	vdds-supply = <&vreg_l1e_0p88>;
734	status = "okay";
735};
736
737&mdss_dp0 {
738	status = "okay";
739};
740
741&mdss_dp0_out {
742	data-lanes = <0 1>;
743};
744
745&pcie0 {
746	wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
747	perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
748
749	pinctrl-names = "default";
750	pinctrl-0 = <&pcie0_default_state>;
751
752	status = "okay";
753};
754
755&pcie0_phy {
756	vdda-phy-supply = <&vreg_l1e_0p88>;
757	vdda-pll-supply = <&vreg_l3e_1p2>;
758
759	status = "okay";
760};
761
762&pcie1 {
763	wake-gpios = <&tlmm 99 GPIO_ACTIVE_HIGH>;
764	perst-gpios = <&tlmm 97 GPIO_ACTIVE_LOW>;
765
766	pinctrl-names = "default";
767	pinctrl-0 = <&pcie1_default_state>;
768
769	status = "okay";
770};
771
772&pcie1_phy {
773	vdda-phy-supply = <&vreg_l3c_0p91>;
774	vdda-pll-supply = <&vreg_l3e_1p2>;
775	vdda-qref-supply = <&vreg_l1e_0p88>;
776
777	status = "okay";
778};
779
780&pm8550_gpios {
781	sdc2_card_det_n: sdc2-card-det-state {
782		pins = "gpio12";
783		function = "normal";
784		input-enable;
785		output-disable;
786		bias-pull-up;
787		power-source = <1>; /* 1.8 V */
788	};
789};
790
791&pm8550b_eusb2_repeater {
792	vdd18-supply = <&vreg_l15b_1p8>;
793	vdd3-supply = <&vreg_l5b_3p1>;
794};
795
796&qupv3_id_0 {
797	status = "okay";
798};
799
800&remoteproc_adsp {
801	firmware-name = "qcom/sm8550/adsp.mbn",
802			"qcom/sm8550/adsp_dtb.mbn";
803	status = "okay";
804};
805
806&remoteproc_cdsp {
807	firmware-name = "qcom/sm8550/cdsp.mbn",
808			"qcom/sm8550/cdsp_dtb.mbn";
809	status = "okay";
810};
811
812&remoteproc_mpss {
813	firmware-name = "qcom/sm8550/modem.mbn",
814			"qcom/sm8550/modem_dtb.mbn";
815	status = "okay";
816};
817
818&sdhc_2 {
819	cd-gpios = <&pm8550_gpios 12 GPIO_ACTIVE_LOW>;
820	pinctrl-names = "default", "sleep";
821	pinctrl-0 = <&sdc2_default &sdc2_card_det_n>;
822	pinctrl-1 = <&sdc2_sleep &sdc2_card_det_n>;
823	vmmc-supply = <&vreg_l9b_2p9>;
824	vqmmc-supply = <&vreg_l8b_1p8>;
825	bus-width = <4>;
826	no-sdio;
827	no-mmc;
828	status = "okay";
829};
830
831&sleep_clk {
832	clock-frequency = <32764>;
833};
834
835&swr0 {
836	status = "okay";
837
838	/* WSA8845 */
839	left_spkr: speaker@0,0 {
840		compatible = "sdw20217020400";
841		reg = <0 0>;
842		pinctrl-names = "default";
843		pinctrl-0 = <&spkr_1_sd_n_active>;
844		powerdown-gpios = <&lpass_tlmm 17 GPIO_ACTIVE_LOW>;
845		#sound-dai-cells = <0>;
846		sound-name-prefix = "SpkrLeft";
847		vdd-1p8-supply = <&vreg_l15b_1p8>;
848		vdd-io-supply = <&vreg_l3g_1p2>;
849		qcom,port-mapping = <1 2 3 7 10 13>;
850	};
851
852	/* WSA8845 */
853	right_spkr: speaker@0,1 {
854		compatible = "sdw20217020400";
855		reg = <0 1>;
856		pinctrl-names = "default";
857		pinctrl-0 = <&spkr_2_sd_n_active>;
858		powerdown-gpios = <&lpass_tlmm 18 GPIO_ACTIVE_LOW>;
859		#sound-dai-cells = <0>;
860		sound-name-prefix = "SpkrRight";
861		vdd-1p8-supply = <&vreg_l15b_1p8>;
862		vdd-io-supply = <&vreg_l3g_1p2>;
863		qcom,port-mapping = <4 5 6 7 11 13>;
864	};
865};
866
867&swr1 {
868	status = "okay";
869
870	/* WCD9385 RX */
871	wcd_rx: codec@0,4 {
872		compatible = "sdw20217010d00";
873		reg = <0 4>;
874		qcom,rx-port-mapping = <1 2 3 4 5>;
875	};
876};
877
878&swr2 {
879	status = "okay";
880
881	/* WCD9385 TX */
882	wcd_tx: codec@0,3 {
883		compatible = "sdw20217010d00";
884		reg = <0 3>;
885		qcom,tx-port-mapping = <2 2 3 4>;
886	};
887};
888
889&tlmm {
890	gpio-reserved-ranges = <32 8>;
891
892	sde_dsi_active: sde-dsi-active-state {
893		pins = "gpio133";
894		function = "gpio";
895		drive-strength = <8>;
896		bias-disable;
897	};
898
899	sde_dsi_suspend: sde-dsi-suspend-state {
900		pins = "gpio133";
901		function = "gpio";
902		drive-strength = <2>;
903		bias-pull-down;
904	};
905
906	sde_te_active: sde-te-active-state {
907		pins = "gpio86";
908		function = "mdp_vsync";
909		drive-strength = <2>;
910		bias-pull-down;
911	};
912
913	sde_te_suspend: sde-te-suspend-state {
914		pins = "gpio86";
915		function = "mdp_vsync";
916		drive-strength = <2>;
917		bias-pull-down;
918	};
919
920	wcd_default: wcd-reset-n-active-state {
921		pins = "gpio108";
922		function = "gpio";
923		drive-strength = <16>;
924		bias-disable;
925		output-low;
926	};
927};
928
929&uart7 {
930	status = "okay";
931};
932
933&ufs_mem_hc {
934	reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
935	vcc-supply = <&vreg_l17b_2p5>;
936	vcc-max-microamp = <1300000>;
937	vccq-supply = <&vreg_l1g_1p2>;
938	vccq-max-microamp = <1200000>;
939	vdd-hba-supply = <&vreg_l3g_1p2>;
940
941	status = "okay";
942};
943
944&ufs_mem_phy {
945	vdda-phy-supply = <&vreg_l1d_0p88>;
946	vdda-pll-supply = <&vreg_l3e_1p2>;
947
948	status = "okay";
949};
950
951&usb_1 {
952	status = "okay";
953};
954
955&usb_1_dwc3_hs {
956	remote-endpoint = <&pmic_glink_hs_in>;
957};
958
959&usb_1_hsphy {
960	vdd-supply = <&vreg_l1e_0p88>;
961	vdda12-supply = <&vreg_l3e_1p2>;
962
963	phys = <&pm8550b_eusb2_repeater>;
964
965	status = "okay";
966};
967
968&usb_dp_qmpphy {
969	vdda-phy-supply = <&vreg_l3e_1p2>;
970	vdda-pll-supply = <&vreg_l3f_0p91>;
971
972	status = "okay";
973};
974
975&usb_dp_qmpphy_out {
976	remote-endpoint = <&pmic_glink_ss_in>;
977};
978
979&xo_board {
980	clock-frequency = <76800000>;
981};
982