xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/sm8550-qrd.dts (revision ec71f661a572a770d7c861cd52a50cbbb0e1a8d1)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2023 Linaro Limited
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/leds/common.h>
9#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
10#include "sm8550.dtsi"
11#include "pm8010.dtsi"
12#include "pm8550.dtsi"
13#include "pm8550b.dtsi"
14#define PMK8550VE_SID 5
15#include "pm8550ve.dtsi"
16#include "pm8550vs.dtsi"
17#include "pmk8550.dtsi"
18#include "pmr735d_a.dtsi"
19#include "pmr735d_b.dtsi"
20
21/ {
22	model = "Qualcomm Technologies, Inc. SM8550 QRD";
23	compatible = "qcom,sm8550-qrd", "qcom,sm8550";
24	chassis-type = "handset";
25
26	aliases {
27		serial0 = &uart7;
28		serial1 = &uart14;
29	};
30
31	wcd938x: audio-codec {
32		compatible = "qcom,wcd9385-codec";
33
34		pinctrl-names = "default";
35		pinctrl-0 = <&wcd_default>;
36
37		qcom,micbias1-microvolt = <1800000>;
38		qcom,micbias2-microvolt = <1800000>;
39		qcom,micbias3-microvolt = <1800000>;
40		qcom,micbias4-microvolt = <1800000>;
41		qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
42		qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
43		qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
44		qcom,rx-device = <&wcd_rx>;
45		qcom,tx-device = <&wcd_tx>;
46
47		reset-gpios = <&tlmm 108 GPIO_ACTIVE_LOW>;
48
49		vdd-buck-supply = <&vreg_l15b_1p8>;
50		vdd-rxtx-supply = <&vreg_l15b_1p8>;
51		vdd-io-supply = <&vreg_l15b_1p8>;
52		vdd-mic-bias-supply = <&vreg_bob1>;
53
54		#sound-dai-cells = <1>;
55	};
56
57	chosen {
58		stdout-path = "serial0:115200n8";
59	};
60
61	gpio-keys {
62		compatible = "gpio-keys";
63
64		pinctrl-0 = <&volume_up_n>;
65		pinctrl-names = "default";
66
67		key-volume-up {
68			label = "Volume Up";
69			linux,code = <KEY_VOLUMEUP>;
70			gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>;
71			debounce-interval = <15>;
72			linux,can-disable;
73			wakeup-source;
74		};
75	};
76
77	pmic-glink {
78		compatible = "qcom,sm8550-pmic-glink", "qcom,pmic-glink";
79		#address-cells = <1>;
80		#size-cells = <0>;
81		orientation-gpios = <&tlmm 11 GPIO_ACTIVE_HIGH>;
82
83		connector@0 {
84			compatible = "usb-c-connector";
85			reg = <0>;
86			power-role = "dual";
87			data-role = "dual";
88
89			ports {
90				#address-cells = <1>;
91				#size-cells = <0>;
92
93				port@0 {
94					reg = <0>;
95
96					pmic_glink_hs_in: endpoint {
97						remote-endpoint = <&usb_1_dwc3_hs>;
98					};
99				};
100
101				port@1 {
102					reg = <1>;
103
104					pmic_glink_ss_in: endpoint {
105						remote-endpoint = <&redriver_ss_out>;
106					};
107				};
108
109				port@2 {
110					reg = <2>;
111
112					pmic_glink_sbu: endpoint {
113						remote-endpoint = <&fsa4480_sbu_mux>;
114					};
115				};
116			};
117		};
118	};
119
120	sound {
121		compatible = "qcom,sm8550-sndcard", "qcom,sm8450-sndcard";
122		model = "SM8550-QRD";
123		audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
124				"SpkrRight IN", "WSA_SPK2 OUT",
125				"IN1_HPHL", "HPHL_OUT",
126				"IN2_HPHR", "HPHR_OUT",
127				"AMIC1", "MIC BIAS1",
128				"AMIC2", "MIC BIAS2",
129				"AMIC3", "MIC BIAS3",
130				"AMIC4", "MIC BIAS3",
131				"AMIC5", "MIC BIAS4",
132				"VA DMIC0", "MIC BIAS1",
133				"VA DMIC1", "MIC BIAS1",
134				"VA DMIC2", "MIC BIAS3",
135				"TX DMIC0", "MIC BIAS1",
136				"TX DMIC1", "MIC BIAS2",
137				"TX DMIC2", "MIC BIAS3",
138				"TX SWR_INPUT0", "ADC1_OUTPUT",
139				"TX SWR_INPUT1", "ADC2_OUTPUT",
140				"TX SWR_INPUT0", "ADC3_OUTPUT",
141				"TX SWR_INPUT1", "ADC4_OUTPUT";
142
143		wcd-playback-dai-link {
144			link-name = "WCD Playback";
145
146			cpu {
147				sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
148			};
149
150			codec {
151				sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>;
152			};
153
154			platform {
155				sound-dai = <&q6apm>;
156			};
157		};
158
159		wcd-capture-dai-link {
160			link-name = "WCD Capture";
161
162			cpu {
163				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
164			};
165
166			codec {
167				sound-dai = <&wcd938x 1>, <&swr2 0>, <&lpass_txmacro 0>;
168			};
169
170			platform {
171				sound-dai = <&q6apm>;
172			};
173		};
174
175		wsa-dai-link {
176			link-name = "WSA Playback";
177
178			cpu {
179				sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
180			};
181
182			codec {
183				sound-dai = <&north_spkr>, <&south_spkr>, <&swr0 0>, <&lpass_wsamacro 0>;
184			};
185
186			platform {
187				sound-dai = <&q6apm>;
188			};
189		};
190
191		va-dai-link {
192			link-name = "VA Capture";
193
194			cpu {
195				sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
196			};
197
198			codec {
199				sound-dai = <&lpass_vamacro 0>;
200			};
201
202			platform {
203				sound-dai = <&q6apm>;
204			};
205		};
206	};
207
208	vph_pwr: vph-pwr-regulator {
209		compatible = "regulator-fixed";
210		regulator-name = "vph_pwr";
211		regulator-min-microvolt = <3700000>;
212		regulator-max-microvolt = <3700000>;
213
214		regulator-always-on;
215		regulator-boot-on;
216	};
217
218	wcn7850-pmu {
219		compatible = "qcom,wcn7850-pmu";
220
221		pinctrl-names = "default";
222		pinctrl-0 = <&wlan_en>, <&bt_default>, <&pmk8550_sleep_clk>;
223
224		wlan-enable-gpios = <&tlmm 80 GPIO_ACTIVE_HIGH>;
225		bt-enable-gpios = <&tlmm 81 GPIO_ACTIVE_HIGH>;
226
227		vdd-supply = <&vreg_s5g_0p85>;
228		vddio-supply = <&vreg_l15b_1p8>;
229		vddaon-supply = <&vreg_s2g_0p85>;
230		vdddig-supply = <&vreg_s4e_0p95>;
231		vddrfa1p2-supply = <&vreg_s4g_1p25>;
232		vddrfa1p8-supply = <&vreg_s6g_1p86>;
233
234		regulators {
235			vreg_pmu_rfa_cmn: ldo0 {
236				regulator-name = "vreg_pmu_rfa_cmn";
237			};
238
239			vreg_pmu_aon_0p59: ldo1 {
240				regulator-name = "vreg_pmu_aon_0p59";
241			};
242
243			vreg_pmu_wlcx_0p8: ldo2 {
244				regulator-name = "vreg_pmu_wlcx_0p8";
245			};
246
247			vreg_pmu_wlmx_0p85: ldo3 {
248				regulator-name = "vreg_pmu_wlmx_0p85";
249			};
250
251			vreg_pmu_btcmx_0p85: ldo4 {
252				regulator-name = "vreg_pmu_btcmx_0p85";
253			};
254
255			vreg_pmu_rfa_0p8: ldo5 {
256				regulator-name = "vreg_pmu_rfa_0p8";
257			};
258
259			vreg_pmu_rfa_1p2: ldo6 {
260				regulator-name = "vreg_pmu_rfa_1p2";
261			};
262
263			vreg_pmu_rfa_1p8: ldo7 {
264				regulator-name = "vreg_pmu_rfa_1p8";
265			};
266
267			vreg_pmu_pcie_0p9: ldo8 {
268				regulator-name = "vreg_pmu_pcie_0p9";
269			};
270
271			vreg_pmu_pcie_1p8: ldo9 {
272				regulator-name = "vreg_pmu_pcie_1p8";
273			};
274		};
275	};
276};
277
278&apps_rsc {
279	regulators-0 {
280		compatible = "qcom,pm8550-rpmh-regulators";
281		qcom,pmic-id = "b";
282
283		vdd-bob1-supply = <&vph_pwr>;
284		vdd-bob2-supply = <&vph_pwr>;
285		vdd-l1-l4-l10-supply = <&vreg_s6g_1p86>;
286		vdd-l2-l13-l14-supply = <&vreg_bob1>;
287		vdd-l3-supply = <&vreg_s4g_1p25>;
288		vdd-l5-l16-supply = <&vreg_bob1>;
289		vdd-l6-l7-supply = <&vreg_bob1>;
290		vdd-l8-l9-supply = <&vreg_bob1>;
291		vdd-l11-supply = <&vreg_s4g_1p25>;
292		vdd-l12-supply = <&vreg_s6g_1p86>;
293		vdd-l15-supply = <&vreg_s6g_1p86>;
294		vdd-l17-supply = <&vreg_bob2>;
295
296		vreg_bob1: bob1 {
297			regulator-name = "vreg_bob1";
298			regulator-min-microvolt = <3296000>;
299			regulator-max-microvolt = <3960000>;
300			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
301		};
302
303		vreg_bob2: bob2 {
304			regulator-name = "vreg_bob2";
305			regulator-min-microvolt = <2720000>;
306			regulator-max-microvolt = <3960000>;
307			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
308		};
309
310		vreg_l1b_1p8: ldo1 {
311			regulator-name = "vreg_l1b_1p8";
312			regulator-min-microvolt = <1800000>;
313			regulator-max-microvolt = <1800000>;
314			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
315		};
316
317		vreg_l2b_3p0: ldo2 {
318			regulator-name = "vreg_l2b_3p0";
319			regulator-min-microvolt = <3008000>;
320			regulator-max-microvolt = <3008000>;
321			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
322		};
323
324		vreg_l5b_3p1: ldo5 {
325			regulator-name = "vreg_l5b_3p1";
326			regulator-min-microvolt = <3104000>;
327			regulator-max-microvolt = <3104000>;
328			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
329		};
330
331		vreg_l6b_1p8: ldo6 {
332			regulator-name = "vreg_l6b_1p8";
333			regulator-min-microvolt = <1800000>;
334			regulator-max-microvolt = <3008000>;
335			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
336		};
337
338		vreg_l7b_1p8: ldo7 {
339			regulator-name = "vreg_l7b_1p8";
340			regulator-min-microvolt = <1800000>;
341			regulator-max-microvolt = <3008000>;
342			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
343		};
344
345		vreg_l8b_1p8: ldo8 {
346			regulator-name = "vreg_l8b_1p8";
347			regulator-min-microvolt = <1800000>;
348			regulator-max-microvolt = <3008000>;
349			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
350		};
351
352		vreg_l9b_2p9: ldo9 {
353			regulator-name = "vreg_l9b_2p9";
354			regulator-min-microvolt = <2960000>;
355			regulator-max-microvolt = <3008000>;
356			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
357		};
358
359		vreg_l11b_1p2: ldo11 {
360			regulator-name = "vreg_l11b_1p2";
361			regulator-min-microvolt = <1200000>;
362			regulator-max-microvolt = <1504000>;
363			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
364		};
365
366		vreg_l12b_1p8: ldo12 {
367			regulator-name = "vreg_l12b_1p8";
368			regulator-min-microvolt = <1800000>;
369			regulator-max-microvolt = <1800000>;
370			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
371		};
372
373		vreg_l13b_3p0: ldo13 {
374			regulator-name = "vreg_l13b_3p0";
375			regulator-min-microvolt = <3000000>;
376			regulator-max-microvolt = <3000000>;
377			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
378		};
379
380		vreg_l14b_3p2: ldo14 {
381			regulator-name = "vreg_l14b_3p2";
382			regulator-min-microvolt = <3200000>;
383			regulator-max-microvolt = <3200000>;
384			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
385		};
386
387		vreg_l15b_1p8: ldo15 {
388			regulator-name = "vreg_l15b_1p8";
389			regulator-min-microvolt = <1800000>;
390			regulator-max-microvolt = <1800000>;
391			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
392		};
393
394		vreg_l16b_2p8: ldo16 {
395			regulator-name = "vreg_l16b_2p8";
396			regulator-min-microvolt = <2800000>;
397			regulator-max-microvolt = <2800000>;
398			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
399		};
400
401		vreg_l17b_2p5: ldo17 {
402			regulator-name = "vreg_l17b_2p5";
403			regulator-min-microvolt = <2504000>;
404			regulator-max-microvolt = <2504000>;
405			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
406		};
407	};
408
409	regulators-1 {
410		compatible = "qcom,pm8550vs-rpmh-regulators";
411		qcom,pmic-id = "c";
412
413		vdd-l1-supply = <&vreg_s4g_1p25>;
414		vdd-l2-supply = <&vreg_s4e_0p95>;
415		vdd-l3-supply = <&vreg_s4e_0p95>;
416
417		vreg_l3c_0p9: ldo3 {
418			regulator-name = "vreg_l3c_0p9";
419			regulator-min-microvolt = <880000>;
420			regulator-max-microvolt = <912000>;
421			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
422		};
423	};
424
425	regulators-2 {
426		compatible = "qcom,pm8550vs-rpmh-regulators";
427		qcom,pmic-id = "d";
428
429		vdd-l1-supply = <&vreg_s4e_0p95>;
430		vdd-l2-supply = <&vreg_s4e_0p95>;
431		vdd-l3-supply = <&vreg_s4e_0p95>;
432
433		vreg_l1d_0p88: ldo1 {
434			regulator-name = "vreg_l1d_0p88";
435			regulator-min-microvolt = <880000>;
436			regulator-max-microvolt = <920000>;
437			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
438		};
439
440		/* ldo2 supplies SM8550 VDD_LPI_MX */
441	};
442
443	regulators-3 {
444		compatible = "qcom,pm8550vs-rpmh-regulators";
445		qcom,pmic-id = "e";
446
447		vdd-l1-supply = <&vreg_s4e_0p95>;
448		vdd-l2-supply = <&vreg_s4e_0p95>;
449		vdd-l3-supply = <&vreg_s4g_1p25>;
450		vdd-s4-supply = <&vph_pwr>;
451		vdd-s5-supply = <&vph_pwr>;
452
453		vreg_s4e_0p95: smps4 {
454			regulator-name = "vreg_s4e_0p95";
455			regulator-min-microvolt = <904000>;
456			regulator-max-microvolt = <984000>;
457			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
458		};
459
460		vreg_s5e_1p08: smps5 {
461			regulator-name = "vreg_s5e_1p08";
462			regulator-min-microvolt = <1080000>;
463			regulator-max-microvolt = <1120000>;
464			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
465		};
466
467		vreg_l1e_0p88: ldo1 {
468			regulator-name = "vreg_l1e_0p88";
469			regulator-min-microvolt = <880000>;
470			regulator-max-microvolt = <880000>;
471			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
472		};
473
474		vreg_l2e_0p9: ldo2 {
475			regulator-name = "vreg_l2e_0p9";
476			regulator-min-microvolt = <904000>;
477			regulator-max-microvolt = <970000>;
478			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
479		};
480
481		vreg_l3e_1p2: ldo3 {
482			regulator-name = "vreg_l3e_1p2";
483			regulator-min-microvolt = <1200000>;
484			regulator-max-microvolt = <1200000>;
485			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
486		};
487	};
488
489	regulators-4 {
490		compatible = "qcom,pm8550ve-rpmh-regulators";
491		qcom,pmic-id = "f";
492
493		vdd-l1-supply = <&vreg_s4e_0p95>;
494		vdd-l2-supply = <&vreg_s4e_0p95>;
495		vdd-l3-supply = <&vreg_s4e_0p95>;
496		vdd-s4-supply = <&vph_pwr>;
497
498		vreg_s4f_0p5: smps4 {
499			regulator-name = "vreg_s4f_0p5";
500			regulator-min-microvolt = <500000>;
501			regulator-max-microvolt = <700000>;
502			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
503		};
504
505		vreg_l1f_0p9: ldo1 {
506			regulator-name = "vreg_l1f_0p9";
507			regulator-min-microvolt = <912000>;
508			regulator-max-microvolt = <912000>;
509			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
510		};
511
512		vreg_l2f_0p88: ldo2 {
513			regulator-name = "vreg_l2f_0p88";
514			regulator-min-microvolt = <880000>;
515			regulator-max-microvolt = <912000>;
516			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
517		};
518
519		vreg_l3f_0p88: ldo3 {
520			regulator-name = "vreg_l3f_0p88";
521			regulator-min-microvolt = <880000>;
522			regulator-max-microvolt = <912000>;
523			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
524		};
525	};
526
527	regulators-5 {
528		compatible = "qcom,pm8550vs-rpmh-regulators";
529		qcom,pmic-id = "g";
530
531		vdd-l1-supply = <&vreg_s4g_1p25>;
532		vdd-l2-supply = <&vreg_s4g_1p25>;
533		vdd-l3-supply = <&vreg_s4g_1p25>;
534		vdd-s1-supply = <&vph_pwr>;
535		vdd-s2-supply = <&vph_pwr>;
536		vdd-s3-supply = <&vph_pwr>;
537		vdd-s4-supply = <&vph_pwr>;
538		vdd-s5-supply = <&vph_pwr>;
539		vdd-s6-supply = <&vph_pwr>;
540
541		vreg_s1g_1p25: smps1 {
542			regulator-name = "vreg_s1g_1p25";
543			regulator-min-microvolt = <1200000>;
544			regulator-max-microvolt = <1300000>;
545			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
546		};
547
548		vreg_s2g_0p85: smps2 {
549			regulator-name = "vreg_s2g_0p85";
550			regulator-min-microvolt = <800000>;
551			regulator-max-microvolt = <1000000>;
552			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
553		};
554
555		vreg_s3g_0p8: smps3 {
556			regulator-name = "vreg_s3g_0p8";
557			regulator-min-microvolt = <300000>;
558			regulator-max-microvolt = <1004000>;
559			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
560		};
561
562		vreg_s4g_1p25: smps4 {
563			regulator-name = "vreg_s4g_1p25";
564			regulator-min-microvolt = <1200000>;
565			regulator-max-microvolt = <1352000>;
566			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
567		};
568
569		vreg_s5g_0p85: smps5 {
570			regulator-name = "vreg_s5g_0p85";
571			regulator-min-microvolt = <500000>;
572			regulator-max-microvolt = <1004000>;
573			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
574		};
575
576		vreg_s6g_1p86: smps6 {
577			regulator-name = "vreg_s6g_1p86";
578			regulator-min-microvolt = <1800000>;
579			regulator-max-microvolt = <2000000>;
580			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
581		};
582
583		vreg_l1g_1p2: ldo1 {
584			regulator-name = "vreg_l1g_1p2";
585			regulator-min-microvolt = <1200000>;
586			regulator-max-microvolt = <1200000>;
587			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
588		};
589
590		vreg_l3g_1p2: ldo3 {
591			regulator-name = "vreg_l3g_1p2";
592			regulator-min-microvolt = <1200000>;
593			regulator-max-microvolt = <1200000>;
594			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
595		};
596	};
597
598	regulators-6 {
599		compatible = "qcom,pm8010-rpmh-regulators";
600		qcom,pmic-id = "m";
601
602		vdd-l1-l2-supply = <&vreg_s4g_1p25>;
603		vdd-l3-l4-supply = <&vreg_bob2>;
604		vdd-l5-supply = <&vreg_s6g_1p86>;
605		vdd-l6-supply = <&vreg_s6g_1p86>;
606		vdd-l7-supply = <&vreg_bob1>;
607
608		vreg_l1m_1p056: ldo1 {
609			regulator-name = "vreg_l1m_1p056";
610			regulator-min-microvolt = <1056000>;
611			regulator-max-microvolt = <1056000>;
612			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
613		};
614
615		vreg_l2m_1p056: ldo2 {
616			regulator-name = "vreg_l2m_1p056";
617			regulator-min-microvolt = <1056000>;
618			regulator-max-microvolt = <1056000>;
619			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
620		};
621
622		vreg_l3m_2p8: ldo3 {
623			regulator-name = "vreg_l3m_2p8";
624			regulator-min-microvolt = <2800000>;
625			regulator-max-microvolt = <2800000>;
626			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
627		};
628
629		vreg_l4m_2p8: ldo4 {
630			regulator-name = "vreg_l4m_2p8";
631			regulator-min-microvolt = <2800000>;
632			regulator-max-microvolt = <2800000>;
633			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
634		};
635
636		vreg_l5m_1p8: ldo5 {
637			regulator-name = "vreg_l5m_1p8";
638			regulator-min-microvolt = <1800000>;
639			regulator-max-microvolt = <1800000>;
640			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
641		};
642
643		vreg_l6m_1p8: ldo6 {
644			regulator-name = "vreg_l6m_1p8";
645			regulator-min-microvolt = <1800000>;
646			regulator-max-microvolt = <1800000>;
647			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
648		};
649
650		vreg_l7m_2p9: ldo7 {
651			regulator-name = "vreg_l7m_2p9";
652			regulator-min-microvolt = <2800000>;
653			regulator-max-microvolt = <2904000>;
654			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
655		};
656	};
657
658	regulators-7 {
659		compatible = "qcom,pm8010-rpmh-regulators";
660		qcom,pmic-id = "n";
661
662		vdd-l1-l2-supply = <&vreg_s4g_1p25>;
663		vdd-l3-l4-supply = <&vreg_bob2>;
664		vdd-l5-supply = <&vreg_s6g_1p86>;
665		vdd-l6-supply = <&vreg_bob1>;
666		vdd-l7-supply = <&vreg_bob1>;
667
668		vreg_l1n_1p1: ldo1 {
669			regulator-name = "vreg_l1n_1p1";
670			regulator-min-microvolt = <1104000>;
671			regulator-max-microvolt = <1200000>;
672			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
673		};
674
675		vreg_l2n_1p1: ldo2 {
676			regulator-name = "vreg_l2n_1p1";
677			regulator-min-microvolt = <1104000>;
678			regulator-max-microvolt = <1200000>;
679			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
680		};
681
682		vreg_l3n_2p8: ldo3 {
683			regulator-name = "vreg_l3n_2p8";
684			regulator-min-microvolt = <2800000>;
685			regulator-max-microvolt = <3000000>;
686			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
687		};
688
689		vreg_l4n_2p8: ldo4 {
690			regulator-name = "vreg_l4n_2p8";
691			regulator-min-microvolt = <2800000>;
692			regulator-max-microvolt = <3300000>;
693			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
694		};
695
696		vreg_l5n_1p8: ldo5 {
697			regulator-name = "vreg_l5n_1p8";
698			regulator-min-microvolt = <1800000>;
699			regulator-max-microvolt = <1800000>;
700			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
701		};
702
703		vreg_l6n_3p3: ldo6 {
704			regulator-name = "vreg_l6n_3p3";
705			regulator-min-microvolt = <2800000>;
706			regulator-max-microvolt = <3304000>;
707			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
708		};
709
710		vreg_l7n_2p96: ldo7 {
711			regulator-name = "vreg_l7n_2p96";
712			regulator-min-microvolt = <2800000>;
713			regulator-max-microvolt = <2960000>;
714			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
715		};
716	};
717};
718
719&i2c_master_hub_0 {
720	status = "okay";
721};
722
723&i2c_hub_2 {
724	status = "okay";
725
726	typec-retimer@1c {
727		compatible = "onnn,nb7vpq904m";
728		reg = <0x1c>;
729
730		vcc-supply = <&vreg_l15b_1p8>;
731
732		retimer-switch;
733		orientation-switch;
734
735		ports {
736			#address-cells = <1>;
737			#size-cells = <0>;
738
739			port@0 {
740				reg = <0>;
741
742				redriver_ss_out: endpoint {
743					remote-endpoint = <&pmic_glink_ss_in>;
744				};
745			};
746
747			port@1 {
748				reg = <1>;
749
750				redriver_ss_in: endpoint {
751					data-lanes = <3 2 1 0>;
752					remote-endpoint = <&usb_dp_qmpphy_out>;
753				};
754			};
755		};
756	};
757
758	typec-mux@42 {
759		compatible = "fcs,fsa4480";
760		reg = <0x42>;
761
762		vcc-supply = <&vreg_bob1>;
763
764		mode-switch;
765		orientation-switch;
766
767		port {
768			fsa4480_sbu_mux: endpoint {
769				remote-endpoint = <&pmic_glink_sbu>;
770			};
771		};
772	};
773};
774
775&ipa {
776	qcom,gsi-loader = "self";
777	memory-region = <&ipa_fw_mem>;
778	firmware-name = "qcom/sm8550/ipa_fws.mbn";
779	status = "okay";
780};
781
782&iris {
783	status = "okay";
784};
785
786&gpi_dma1 {
787	status = "okay";
788};
789
790&gpu {
791	status = "okay";
792
793	zap-shader {
794		firmware-name = "qcom/sm8550/a740_zap.mbn";
795	};
796};
797
798&lpass_tlmm {
799	spkr_1_sd_n_active: spkr-1-sd-n-active-state {
800		pins = "gpio17";
801		function = "gpio";
802		drive-strength = <16>;
803		bias-disable;
804		output-low;
805	};
806
807	spkr_2_sd_n_active: spkr-2-sd-n-active-state {
808		pins = "gpio18";
809		function = "gpio";
810		drive-strength = <16>;
811		bias-disable;
812		output-low;
813	};
814};
815
816&mdss {
817	status = "okay";
818};
819
820&mdss_dsi0 {
821	vdda-supply = <&vreg_l3e_1p2>;
822	status = "okay";
823
824	panel@0 {
825		compatible = "visionox,vtdr6130";
826		reg = <0>;
827
828		pinctrl-0 = <&sde_dsi_active>, <&sde_te_active>;
829		pinctrl-1 = <&sde_dsi_suspend>, <&sde_te_suspend>;
830		pinctrl-names = "default", "sleep";
831
832		vci-supply = <&vreg_l13b_3p0>;
833		vdd-supply = <&vreg_l11b_1p2>;
834		vddio-supply = <&vreg_l12b_1p8>;
835
836		reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
837
838		port {
839			panel0_in: endpoint {
840				remote-endpoint = <&mdss_dsi0_out>;
841			};
842		};
843	};
844};
845
846&mdss_dsi0_out {
847	remote-endpoint = <&panel0_in>;
848	data-lanes = <0 1 2 3>;
849};
850
851&mdss_dsi0_phy {
852	vdds-supply = <&vreg_l1e_0p88>;
853	status = "okay";
854};
855
856&mdss_dp0 {
857	status = "okay";
858};
859
860&mdss_dp0_out {
861	data-lanes = <0 1>;
862};
863
864&pcie0 {
865	wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
866	perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
867
868	pinctrl-0 = <&pcie0_default_state>;
869	pinctrl-names = "default";
870
871	status = "okay";
872};
873
874&pcieport0 {
875	wifi@0 {
876		compatible = "pci17cb,1107";
877		reg = <0x10000 0x0 0x0 0x0 0x0>;
878
879		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
880		vddaon-supply = <&vreg_pmu_aon_0p59>;
881		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
882		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
883		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
884		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
885		vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
886		vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
887		vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
888	};
889};
890
891&pcie0_phy {
892	vdda-phy-supply = <&vreg_l1e_0p88>;
893	vdda-pll-supply = <&vreg_l3e_1p2>;
894
895	status = "okay";
896};
897
898&pm8550_flash {
899	status = "okay";
900
901	led-0 {
902		function = LED_FUNCTION_FLASH;
903		color = <LED_COLOR_ID_YELLOW>;
904		led-sources = <1>, <4>;
905		led-max-microamp = <500000>;
906		flash-max-microamp = <2000000>;
907		flash-max-timeout-us = <1280000>;
908		function-enumerator = <0>;
909	};
910
911	led-1 {
912		function = LED_FUNCTION_FLASH;
913		color = <LED_COLOR_ID_WHITE>;
914		led-sources = <2>, <3>;
915		led-max-microamp = <500000>;
916		flash-max-microamp = <2000000>;
917		flash-max-timeout-us = <1280000>;
918		function-enumerator = <1>;
919	};
920};
921
922&pm8550_gpios {
923	volume_up_n: volume-up-n-state {
924		pins = "gpio6";
925		function = "normal";
926		power-source = <1>;
927		bias-pull-up;
928		input-enable;
929	};
930};
931
932&pm8550_pwm {
933	status = "okay";
934
935	multi-led {
936		color = <LED_COLOR_ID_RGB>;
937		function = LED_FUNCTION_STATUS;
938
939		#address-cells = <1>;
940		#size-cells = <0>;
941
942		led@1 {
943			reg = <1>;
944			color = <LED_COLOR_ID_RED>;
945		};
946
947		led@2 {
948			reg = <2>;
949			color = <LED_COLOR_ID_GREEN>;
950		};
951
952		led@3 {
953			reg = <3>;
954			color = <LED_COLOR_ID_BLUE>;
955		};
956	};
957};
958
959&pm8550b_eusb2_repeater {
960	vdd18-supply = <&vreg_l15b_1p8>;
961	vdd3-supply = <&vreg_l5b_3p1>;
962};
963
964&pon_pwrkey {
965	status = "okay";
966};
967
968&pon_resin {
969	linux,code = <KEY_VOLUMEDOWN>;
970
971	status = "okay";
972};
973
974&pmk8550_gpios {
975	pmk8550_sleep_clk: sleep-clk-state {
976		pins = "gpio3";
977		function = "func1";
978		input-disable;
979		output-enable;
980		bias-disable;
981		power-source = <0>;
982	};
983};
984
985&qupv3_id_0 {
986	status = "okay";
987};
988
989&qupv3_id_1 {
990	status = "okay";
991};
992
993&remoteproc_adsp {
994	firmware-name = "qcom/sm8550/adsp.mbn",
995			"qcom/sm8550/adsp_dtb.mbn";
996	status = "okay";
997};
998
999&remoteproc_cdsp {
1000	firmware-name = "qcom/sm8550/cdsp.mbn",
1001			"qcom/sm8550/cdsp_dtb.mbn";
1002	status = "okay";
1003};
1004
1005&remoteproc_mpss {
1006	firmware-name = "qcom/sm8550/modem.mbn",
1007			"qcom/sm8550/modem_dtb.mbn";
1008	status = "okay";
1009};
1010
1011&sleep_clk {
1012	clock-frequency = <32764>;
1013};
1014
1015&swr0 {
1016	status = "okay";
1017
1018	/* WSA8845, Speaker North */
1019	north_spkr: speaker@0,0 {
1020		compatible = "sdw20217020400";
1021		reg = <0 0>;
1022		pinctrl-names = "default";
1023		pinctrl-0 = <&spkr_1_sd_n_active>;
1024		powerdown-gpios = <&lpass_tlmm 17 GPIO_ACTIVE_LOW>;
1025		#sound-dai-cells = <0>;
1026		sound-name-prefix = "SpkrLeft";
1027		vdd-1p8-supply = <&vreg_l15b_1p8>;
1028		vdd-io-supply = <&vreg_l3g_1p2>;
1029		qcom,port-mapping = <1 2 3 7 10 13>;
1030	};
1031
1032	/* WSA8845, Speaker South */
1033	south_spkr: speaker@0,1 {
1034		compatible = "sdw20217020400";
1035		reg = <0 1>;
1036		pinctrl-names = "default";
1037		pinctrl-0 = <&spkr_2_sd_n_active>;
1038		powerdown-gpios = <&lpass_tlmm 18 GPIO_ACTIVE_LOW>;
1039		#sound-dai-cells = <0>;
1040		sound-name-prefix = "SpkrRight";
1041		vdd-1p8-supply = <&vreg_l15b_1p8>;
1042		vdd-io-supply = <&vreg_l3g_1p2>;
1043		qcom,port-mapping = <4 5 6 7 11 13>;
1044	};
1045};
1046
1047&spi4 {
1048	status = "okay";
1049
1050	touchscreen@0 {
1051		compatible = "goodix,gt9916";
1052		reg = <0>;
1053
1054		interrupt-parent = <&tlmm>;
1055		interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
1056
1057		reset-gpios = <&tlmm 24 GPIO_ACTIVE_LOW>;
1058
1059		avdd-supply = <&vreg_l14b_3p2>;
1060
1061		spi-max-frequency = <1000000>;
1062
1063		touchscreen-size-x = <1080>;
1064		touchscreen-size-y = <2400>;
1065
1066		pinctrl-names = "default";
1067		pinctrl-0 = <&ts_irq>, <&ts_reset>;
1068	};
1069};
1070
1071&swr1 {
1072	status = "okay";
1073
1074	/* WCD9385 RX */
1075	wcd_rx: codec@0,4 {
1076		compatible = "sdw20217010d00";
1077		reg = <0 4>;
1078		qcom,rx-port-mapping = <1 2 3 4 5>;
1079	};
1080};
1081
1082&swr2 {
1083	status = "okay";
1084
1085	/* WCD9385 TX */
1086	wcd_tx: codec@0,3 {
1087		compatible = "sdw20217010d00";
1088		reg = <0 3>;
1089		qcom,tx-port-mapping = <2 2 3 4>;
1090	};
1091};
1092
1093&tlmm {
1094	gpio-reserved-ranges = <32 8>;
1095
1096	bt_default: bt-default-state {
1097		bt-en-pins {
1098			pins = "gpio81";
1099			function = "gpio";
1100			drive-strength = <16>;
1101			bias-disable;
1102		};
1103
1104		sw-ctrl-pins {
1105			pins = "gpio82";
1106			function = "gpio";
1107			bias-pull-down;
1108		};
1109	};
1110
1111	sde_dsi_active: sde-dsi-active-state {
1112		pins = "gpio133";
1113		function = "gpio";
1114		drive-strength = <8>;
1115		bias-disable;
1116	};
1117
1118	sde_dsi_suspend: sde-dsi-suspend-state {
1119		pins = "gpio133";
1120		function = "gpio";
1121		drive-strength = <2>;
1122		bias-pull-down;
1123	};
1124
1125	sde_te_active: sde-te-active-state {
1126		pins = "gpio86";
1127		function = "mdp_vsync";
1128		drive-strength = <2>;
1129		bias-pull-down;
1130	};
1131
1132	sde_te_suspend: sde-te-suspend-state {
1133		pins = "gpio86";
1134		function = "mdp_vsync";
1135		drive-strength = <2>;
1136		bias-pull-down;
1137	};
1138
1139	ts_irq: ts-irq-state {
1140		pins = "gpio25";
1141		function = "gpio";
1142		drive-strength = <8>;
1143		bias-pull-up;
1144	};
1145
1146	ts_reset: ts-reset-state {
1147		pins = "gpio24";
1148		function = "gpio";
1149		drive-strength = <8>;
1150		bias-pull-up;
1151	};
1152
1153	wcd_default: wcd-reset-n-active-state {
1154		pins = "gpio108";
1155		function = "gpio";
1156		drive-strength = <16>;
1157		bias-disable;
1158		output-low;
1159	};
1160
1161	wlan_en: wlan-en-state {
1162		pins = "gpio80";
1163		function = "gpio";
1164		drive-strength = <8>;
1165		bias-pull-down;
1166	};
1167};
1168
1169&uart7 {
1170	status = "okay";
1171};
1172
1173&uart14 {
1174	status = "okay";
1175
1176	bluetooth {
1177		compatible = "qcom,wcn7850-bt";
1178
1179		vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
1180		vddaon-supply = <&vreg_pmu_aon_0p59>;
1181		vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
1182		vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
1183		vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
1184		vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
1185		vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
1186
1187		max-speed = <3200000>;
1188	};
1189};
1190
1191&ufs_mem_hc {
1192	reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
1193	vcc-supply = <&vreg_l17b_2p5>;
1194	vcc-max-microamp = <1300000>;
1195	vccq-supply = <&vreg_l1g_1p2>;
1196	vccq-max-microamp = <1200000>;
1197	vdd-hba-supply = <&vreg_l3g_1p2>;
1198
1199	status = "okay";
1200};
1201
1202&ufs_mem_phy {
1203	vdda-phy-supply = <&vreg_l1d_0p88>;
1204	vdda-pll-supply = <&vreg_l3e_1p2>;
1205
1206	status = "okay";
1207};
1208
1209&usb_1 {
1210	status = "okay";
1211};
1212
1213&usb_1_dwc3_hs {
1214	remote-endpoint = <&pmic_glink_hs_in>;
1215};
1216
1217&usb_1_hsphy {
1218	vdd-supply = <&vreg_l1e_0p88>;
1219	vdda12-supply = <&vreg_l3e_1p2>;
1220
1221	phys = <&pm8550b_eusb2_repeater>;
1222
1223	status = "okay";
1224};
1225
1226&usb_dp_qmpphy {
1227	vdda-phy-supply = <&vreg_l3e_1p2>;
1228	vdda-pll-supply = <&vreg_l3f_0p88>;
1229
1230	status = "okay";
1231};
1232
1233&usb_dp_qmpphy_out {
1234	remote-endpoint = <&redriver_ss_in>;
1235};
1236
1237&xo_board {
1238	clock-frequency = <76800000>;
1239};
1240