xref: /linux/arch/arm64/boot/dts/qcom/sm8450-hdk.dts (revision 71dfa617ea9f18e4585fe78364217cd32b1fc382)
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 <dt-bindings/iio/qcom,spmi-adc7-pm8350.h>
10#include <dt-bindings/iio/qcom,spmi-adc7-pm8350b.h>
11#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
12#include <dt-bindings/iio/qcom,spmi-adc7-pmr735a.h>
13#include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h>
14#include "sm8450.dtsi"
15#include "pm8350.dtsi"
16#include "pm8350b.dtsi"
17#include "pm8350c.dtsi"
18#include "pm8450.dtsi"
19#include "pmk8350.dtsi"
20#include "pmr735a.dtsi"
21
22/ {
23	model = "Qualcomm Technologies, Inc. SM8450 HDK";
24	compatible = "qcom,sm8450-hdk", "qcom,sm8450";
25	chassis-type = "embedded";
26
27	aliases {
28		serial0 = &uart7;
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 43 GPIO_ACTIVE_LOW>;
48
49		vdd-buck-supply = <&vreg_s10b_1p8>;
50		vdd-rxtx-supply = <&vreg_s10b_1p8>;
51		vdd-io-supply = <&vreg_s10b_1p8>;
52		vdd-mic-bias-supply = <&vreg_bob>;
53
54		#sound-dai-cells = <1>;
55	};
56
57	chosen {
58		stdout-path = "serial0:115200n8";
59	};
60
61	hdmi-out {
62		compatible = "hdmi-connector";
63		type = "a";
64
65		port {
66			hdmi_connector_out: endpoint {
67				remote-endpoint = <&lt9611_out>;
68			};
69		};
70	};
71
72	lt9611_1v2: lt9611-vdd12-regulator {
73		compatible = "regulator-fixed";
74		regulator-name = "LT9611_1V2";
75
76		vin-supply = <&vph_pwr>;
77		regulator-min-microvolt = <1200000>;
78		regulator-max-microvolt = <1200000>;
79		gpio = <&tlmm 9 GPIO_ACTIVE_HIGH>;
80		enable-active-high;
81	};
82
83	lt9611_3v3: lt9611-3v3-regulator {
84		compatible = "regulator-fixed";
85		regulator-name = "LT9611_3V3";
86
87		vin-supply = <&vreg_bob>;
88		gpio = <&tlmm 109 GPIO_ACTIVE_HIGH>;
89		regulator-min-microvolt = <3300000>;
90		regulator-max-microvolt = <3300000>;
91		enable-active-high;
92	};
93
94	pmic-glink {
95		compatible = "qcom,sm8450-pmic-glink", "qcom,pmic-glink";
96		#address-cells = <1>;
97		#size-cells = <0>;
98
99		connector@0 {
100			compatible = "usb-c-connector";
101			reg = <0>;
102			power-role = "dual";
103			data-role = "dual";
104
105			ports {
106				#address-cells = <1>;
107				#size-cells = <0>;
108
109				port@0 {
110					reg = <0>;
111
112					pmic_glink_hs_in: endpoint {
113						remote-endpoint = <&usb_1_dwc3_hs>;
114					};
115				};
116
117				port@1 {
118					reg = <1>;
119
120					pmic_glink_ss_in: endpoint {
121						remote-endpoint = <&usb_1_qmpphy_out>;
122					};
123				};
124
125				port@2 {
126					reg = <2>;
127
128					pmic_glink_sbu: endpoint {
129						remote-endpoint = <&fsa4480_sbu_mux>;
130					};
131				};
132
133			};
134		};
135	};
136
137	thermal-zones {
138		camera-thermal {
139			polling-delay-passive = <250>;
140			polling-delay = <0>;
141			thermal-sensors = <&pmk8350_adc_tm 2>;
142
143			trips {
144				active-config0 {
145					temperature = <75000>;
146					hysteresis = <4000>;
147					type = "passive";
148				};
149			};
150		};
151
152		rear-tof-thermal {
153			polling-delay-passive = <250>;
154			polling-delay = <0>;
155			thermal-sensors = <&pmk8350_adc_tm 5>;
156
157			trips {
158				active-config0 {
159					temperature = <75000>;
160					hysteresis = <4000>;
161					type = "passive";
162				};
163			};
164		};
165
166		skin-msm-thermal {
167			polling-delay-passive = <250>;
168			polling-delay = <0>;
169			thermal-sensors = <&pmk8350_adc_tm 1>;
170
171			trips {
172				active-config0 {
173					temperature = <75000>;
174					hysteresis = <4000>;
175					type = "passive";
176				};
177			};
178		};
179
180		therm1-thermal {
181			polling-delay-passive = <250>;
182			polling-delay = <0>;
183			thermal-sensors = <&pmk8350_adc_tm 3>;
184
185			trips {
186				active-config0 {
187					temperature = <75000>;
188					hysteresis = <4000>;
189					type = "passive";
190				};
191			};
192		};
193
194		therm2-thermal {
195			polling-delay-passive = <250>;
196			polling-delay = <0>;
197			thermal-sensors = <&pmk8350_adc_tm 6>;
198
199			trips {
200				active-config0 {
201					temperature = <75000>;
202					hysteresis = <4000>;
203					type = "passive";
204				};
205			};
206		};
207
208		usb-conn-thermal {
209			polling-delay-passive = <250>;
210			polling-delay = <0>;
211			thermal-sensors = <&pmk8350_adc_tm 7>;
212
213			trips {
214				active-config0 {
215					temperature = <75000>;
216					hysteresis = <4000>;
217					type = "passive";
218				};
219			};
220		};
221
222		wide-rfc-thermal {
223			polling-delay-passive = <250>;
224			polling-delay = <0>;
225			thermal-sensors = <&pmk8350_adc_tm 4>;
226
227			trips {
228				active-config0 {
229					temperature = <75000>;
230					hysteresis = <4000>;
231					type = "passive";
232				};
233			};
234		};
235
236		xo-thermal {
237			polling-delay-passive = <0>;
238			polling-delay = <0>;
239			thermal-sensors = <&pmk8350_adc_tm 0>;
240
241			trips {
242				active-config0 {
243					temperature = <50000>;
244					hysteresis = <4000>;
245					type = "passive";
246				};
247			};
248		};
249	};
250
251	vph_pwr: vph-pwr-regulator {
252		compatible = "regulator-fixed";
253		regulator-name = "vph_pwr";
254		regulator-min-microvolt = <3700000>;
255		regulator-max-microvolt = <3700000>;
256
257		regulator-always-on;
258		regulator-boot-on;
259	};
260};
261
262&apps_rsc {
263	regulators-0 {
264		compatible = "qcom,pm8350-rpmh-regulators";
265		qcom,pmic-id = "b";
266
267		vdd-s1-supply = <&vph_pwr>;
268		vdd-s2-supply = <&vph_pwr>;
269		vdd-s3-supply = <&vph_pwr>;
270		vdd-s4-supply = <&vph_pwr>;
271		vdd-s5-supply = <&vph_pwr>;
272		vdd-s6-supply = <&vph_pwr>;
273		vdd-s7-supply = <&vph_pwr>;
274		vdd-s8-supply = <&vph_pwr>;
275		vdd-s9-supply = <&vph_pwr>;
276		vdd-s10-supply = <&vph_pwr>;
277		vdd-s11-supply = <&vph_pwr>;
278		vdd-s12-supply = <&vph_pwr>;
279
280		vdd-l1-l4-supply = <&vreg_s11b_0p95>;
281		vdd-l2-l7-supply = <&vreg_bob>;
282		vdd-l3-l5-supply = <&vreg_bob>;
283		vdd-l6-l9-l10-supply = <&vreg_s12b_1p25>;
284		vdd-l8-supply = <&vreg_s2h_0p95>;
285
286		vreg_s10b_1p8: smps10 {
287			regulator-name = "vreg_s10b_1p8";
288			regulator-min-microvolt = <1800000>;
289			regulator-max-microvolt = <1800000>;
290		};
291
292		vreg_s11b_0p95: smps11 {
293			regulator-name = "vreg_s11b_0p95";
294			regulator-min-microvolt = <966000>;
295			regulator-max-microvolt = <1104000>;
296		};
297
298		vreg_s12b_1p25: smps12 {
299			regulator-name = "vreg_s12b_1p25";
300			regulator-min-microvolt = <1350000>;
301			regulator-max-microvolt = <1400000>;
302		};
303
304		vreg_l1b_0p91: ldo1 {
305			regulator-name = "vreg_l1b_0p91";
306			regulator-min-microvolt = <912000>;
307			regulator-max-microvolt = <920000>;
308			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
309		};
310
311		vreg_l2b_3p07: ldo2 {
312			regulator-name = "vreg_l2b_3p07";
313			regulator-min-microvolt = <3072000>;
314			regulator-max-microvolt = <3072000>;
315			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
316		};
317
318		vreg_l3b_0p9: ldo3 {
319			regulator-name = "vreg_l3b_0p9";
320			regulator-min-microvolt = <904000>;
321			regulator-max-microvolt = <904000>;
322			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
323		};
324
325		vreg_l5b_0p88: ldo5 {
326			regulator-name = "vreg_l5b_0p88";
327			regulator-min-microvolt = <880000>;
328			regulator-max-microvolt = <888000>;
329			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
330		};
331
332		vreg_l6b_1p2: ldo6 {
333			regulator-name = "vreg_l6b_1p2";
334			regulator-min-microvolt = <1200000>;
335			regulator-max-microvolt = <1200000>;
336			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
337		};
338
339		vreg_l7b_2p5: ldo7 {
340			regulator-name = "vreg_l7b_2p5";
341			regulator-min-microvolt = <2504000>;
342			regulator-max-microvolt = <2504000>;
343			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
344		};
345
346		vreg_l9b_1p2: ldo9 {
347			regulator-name = "vreg_l9b_1p2";
348			regulator-min-microvolt = <1200000>;
349			regulator-max-microvolt = <1200000>;
350			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
351		};
352	};
353
354	regulators-1 {
355		compatible = "qcom,pm8350c-rpmh-regulators";
356		qcom,pmic-id = "c";
357
358		vdd-s1-supply = <&vph_pwr>;
359		vdd-s2-supply = <&vph_pwr>;
360		vdd-s3-supply = <&vph_pwr>;
361		vdd-s4-supply = <&vph_pwr>;
362		vdd-s5-supply = <&vph_pwr>;
363		vdd-s6-supply = <&vph_pwr>;
364		vdd-s7-supply = <&vph_pwr>;
365		vdd-s8-supply = <&vph_pwr>;
366		vdd-s9-supply = <&vph_pwr>;
367		vdd-s10-supply = <&vph_pwr>;
368
369		vdd-l1-l12-supply = <&vreg_bob>;
370		vdd-l2-l8-supply = <&vreg_bob>;
371		vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>;
372		vdd-l6-l9-l11-supply = <&vreg_bob>;
373		vdd-l10-supply = <&vreg_s12b_1p25>;
374
375		vdd-bob-supply = <&vph_pwr>;
376
377		vreg_s1c_1p86: smps1 {
378			regulator-name = "vreg_s1c_1p86";
379			regulator-min-microvolt = <1800000>;
380			regulator-max-microvolt = <2024000>;
381		};
382
383		vreg_s10c_1p05: smps10 {
384			regulator-name = "vreg_s10c_1p05";
385			regulator-min-microvolt = <1000000>;
386			regulator-max-microvolt = <1100000>;
387		};
388
389		vreg_bob: bob {
390			regulator-name = "vreg_bob";
391			regulator-min-microvolt = <3008000>;
392			regulator-max-microvolt = <3960000>;
393			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
394		};
395
396		vreg_l1c_1p8: ldo1 {
397			regulator-name = "vreg_l1c_1p8";
398			regulator-min-microvolt = <1800000>;
399			regulator-max-microvolt = <1800000>;
400			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
401		};
402
403		vreg_l3c_3p0: ldo3 {
404			regulator-name = "vreg_l3c_3p0";
405			regulator-min-microvolt = <3296000>;
406			regulator-max-microvolt = <3304000>;
407			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
408		};
409
410		vreg_l4c_1p8: ldo4 {
411			regulator-name = "vreg_l4c_1p8";
412			regulator-min-microvolt = <1704000>;
413			regulator-max-microvolt = <3000000>;
414			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
415		};
416
417		vreg_l5c_1p8: ldo5 {
418			regulator-name = "vreg_l5c_1p8";
419			regulator-min-microvolt = <1704000>;
420			regulator-max-microvolt = <3000000>;
421			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
422		};
423
424		vreg_l6c_1p8: ldo6 {
425			regulator-name = "vreg_l6c_1p8";
426			regulator-min-microvolt = <1800000>;
427			regulator-max-microvolt = <3008000>;
428			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
429		};
430
431		vreg_l7c_3p0: ldo7 {
432			regulator-name = "vreg_l7c_3p0";
433			regulator-min-microvolt = <3008000>;
434			regulator-max-microvolt = <3008000>;
435			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
436		};
437
438		vreg_l8c_1p8: ldo8 {
439			regulator-name = "vreg_l8c_1p8";
440			regulator-min-microvolt = <1800000>;
441			regulator-max-microvolt = <1800000>;
442			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
443		};
444
445		vreg_l9c_2p96: ldo9 {
446			regulator-name = "vreg_l9c_2p96";
447			regulator-min-microvolt = <2960000>;
448			regulator-max-microvolt = <3008000>;
449			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
450		};
451
452		vreg_l12c_1p8: ldo12 {
453			regulator-name = "vreg_l12c_1p8";
454			regulator-min-microvolt = <1800000>;
455			regulator-max-microvolt = <1968000>;
456			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
457		};
458
459		vreg_l13c_3p0: ldo13 {
460			regulator-name = "vreg_l13c_3p0";
461			regulator-min-microvolt = <3000000>;
462			regulator-max-microvolt = <3000000>;
463			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
464		};
465	};
466
467	regulators-2 {
468		compatible = "qcom,pm8450-rpmh-regulators";
469		qcom,pmic-id = "h";
470
471		vdd-s1-supply = <&vph_pwr>;
472		vdd-s2-supply = <&vph_pwr>;
473		vdd-s3-supply = <&vph_pwr>;
474		vdd-s4-supply = <&vph_pwr>;
475		vdd-s5-supply = <&vph_pwr>;
476		vdd-s6-supply = <&vph_pwr>;
477
478		vdd-l2-supply = <&vreg_bob>;
479		vdd-l3-supply = <&vreg_bob>;
480		vdd-l4-supply = <&vreg_bob>;
481
482		vreg_s2h_0p95: smps2 {
483			regulator-name = "vreg_s2h_0p95";
484			regulator-min-microvolt = <848000>;
485			regulator-max-microvolt = <1104000>;
486		};
487
488		vreg_s3h_0p5: smps3 {
489			regulator-name = "vreg_s3h_0p5";
490			regulator-min-microvolt = <500000>;
491			regulator-max-microvolt = <500000>;
492		};
493
494		vreg_l2h_0p91: ldo2 {
495			regulator-name = "vreg_l2h_0p91";
496			regulator-min-microvolt = <880000>;
497			regulator-max-microvolt = <912000>;
498			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
499		};
500
501		vreg_l3h_0p91: ldo3 {
502			regulator-name = "vreg_l3h_0p91";
503			regulator-min-microvolt = <912000>;
504			regulator-max-microvolt = <912000>;
505			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
506		};
507	};
508
509	regulators-3 {
510		compatible = "qcom,pmr735a-rpmh-regulators";
511		qcom,pmic-id = "e";
512
513		vdd-s1-supply = <&vph_pwr>;
514		vdd-s2-supply = <&vph_pwr>;
515		vdd-s3-supply = <&vph_pwr>;
516
517		vdd-l1-l2-supply = <&vreg_s2e_0p85>;
518		vdd-l3-supply = <&vreg_s1e_1p25>;
519		vdd-l4-supply = <&vreg_s1c_1p86>;
520		vdd-l5-l6-supply = <&vreg_s1c_1p86>;
521		vdd-l7-bob-supply = <&vreg_bob>;
522
523		vreg_s1e_1p25: smps1 {
524			regulator-name = "vreg_s1e_1p25";
525			regulator-min-microvolt = <1200000>;
526			regulator-max-microvolt = <1296000>;
527		};
528
529		vreg_s2e_0p85: smps2 {
530			regulator-name = "vreg_s2e_0p85";
531			regulator-min-microvolt = <500000>;
532			regulator-max-microvolt = <1040000>;
533		};
534
535		vreg_l1e_0p8: ldo1 {
536			regulator-name = "vreg_l1e_0p8";
537			regulator-min-microvolt = <800000>;
538			regulator-max-microvolt = <800000>;
539		};
540
541		vreg_l2e_0p8: ldo2 {
542			regulator-name = "vreg_l2e_0p8";
543			regulator-min-microvolt = <800000>;
544			regulator-max-microvolt = <800000>;
545		};
546
547		vreg_l3e_1p2: ldo3 {
548			regulator-name = "vreg_l3e_1p2";
549			regulator-min-microvolt = <1200000>;
550			regulator-max-microvolt = <1200000>;
551		};
552
553		vreg_l4e_1p7: ldo4 {
554			regulator-name = "vreg_l4e_1p7";
555			regulator-min-microvolt = <1776000>;
556			regulator-max-microvolt = <1776000>;
557		};
558
559		vreg_l5e_0p88: ldo5 {
560			regulator-name = "vreg_l5e_0p88";
561			regulator-min-microvolt = <880000>;
562			regulator-max-microvolt = <880000>;
563		};
564
565		vreg_l6e_1p2: ldo6 {
566			regulator-name = "vreg_l6e_1p2";
567			regulator-min-microvolt = <1200000>;
568			regulator-max-microvolt = <1200000>;
569		};
570
571		vreg_l7e_2p8: ldo7 {
572			regulator-name = "vreg_l7e_2p8";
573			regulator-min-microvolt = <2800000>;
574			regulator-max-microvolt = <2800000>;
575		};
576	};
577};
578
579&dispcc {
580	status = "okay";
581};
582
583&gpu {
584	status = "okay";
585
586	zap-shader {
587		firmware-name = "qcom/sm8450/a730_zap.mbn";
588	};
589};
590
591&i2c9 {
592	clock-frequency = <400000>;
593	status = "okay";
594
595	lt9611_codec: hdmi-bridge@2b {
596		compatible = "lontium,lt9611uxc";
597		reg = <0x2b>;
598
599		interrupts-extended = <&tlmm 44 IRQ_TYPE_EDGE_FALLING>;
600
601		reset-gpios = <&tlmm 107 GPIO_ACTIVE_HIGH>;
602
603		vdd-supply = <&lt9611_1v2>;
604		vcc-supply = <&lt9611_3v3>;
605
606		pinctrl-names = "default";
607		pinctrl-0 = <&lt9611_irq_pin &lt9611_rst_pin>;
608
609		ports {
610			#address-cells = <1>;
611			#size-cells = <0>;
612
613			port@0 {
614				reg = <0>;
615
616				lt9611_a: endpoint {
617					remote-endpoint = <&mdss_dsi0_out>;
618				};
619			};
620
621			port@2 {
622				reg = <2>;
623
624				lt9611_out: endpoint {
625					remote-endpoint = <&hdmi_connector_out>;
626				};
627			};
628		};
629	};
630};
631
632&i2c5 {
633	clock-frequency = <100000>;
634
635	status = "okay";
636
637	typec-mux@42 {
638		compatible = "fcs,fsa4480";
639		reg = <0x42>;
640
641		interrupts-extended = <&tlmm 2 IRQ_TYPE_LEVEL_LOW>;
642
643		vcc-supply = <&vreg_bob>;
644		mode-switch;
645		orientation-switch;
646
647		port {
648			fsa4480_sbu_mux: endpoint {
649				remote-endpoint = <&pmic_glink_sbu>;
650			};
651		};
652	};
653};
654
655&mdss {
656	status = "okay";
657};
658
659&mdss_dsi0 {
660	vdda-supply = <&vreg_l6b_1p2>;
661	status = "okay";
662};
663
664&mdss_dsi0_out {
665	remote-endpoint = <&lt9611_a>;
666	data-lanes = <0 1 2 3>;
667};
668
669&mdss_dsi0_phy {
670	vdds-supply = <&vreg_l5b_0p88>;
671	status = "okay";
672};
673
674&mdss_dp0 {
675	status = "okay";
676
677	ports {
678		port@1 {
679			reg = <1>;
680
681			mdss_dp0_out: endpoint {
682				data-lanes = <0 1>;
683				remote-endpoint = <&usb_1_qmpphy_dp_in>;
684			};
685		};
686	};
687};
688
689&pcie0 {
690	status = "okay";
691	max-link-speed = <2>;
692};
693
694&pcie0_phy {
695	status = "okay";
696	vdda-phy-supply = <&vreg_l5b_0p88>;
697	vdda-pll-supply = <&vreg_l6b_1p2>;
698};
699
700&pcie1 {
701	status = "okay";
702};
703
704&pcie1_phy {
705	status = "okay";
706	vdda-phy-supply = <&vreg_l2h_0p91>;
707	vdda-pll-supply = <&vreg_l6b_1p2>;
708};
709
710&pm8350_temp_alarm {
711	io-channels = <&pmk8350_vadc PM8350_ADC7_DIE_TEMP(1)>;
712	io-channel-names = "thermal";
713};
714
715&pm8350b_temp_alarm {
716	io-channels = <&pmk8350_vadc PM8350B_ADC7_DIE_TEMP>;
717	io-channel-names = "thermal";
718};
719
720&pmr735a_temp_alarm {
721	io-channels = <&pmk8350_vadc PMR735A_ADC7_DIE_TEMP>;
722	io-channel-names = "thermal";
723};
724
725&pmk8350_adc_tm {
726	status = "okay";
727
728	xo-therm@0 {
729		reg = <0>;
730		io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>;
731		qcom,ratiometric;
732		qcom,hw-settle-time-us = <200>;
733	};
734
735	skin-msm-therm@1 {
736		reg = <1>;
737		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
738		qcom,ratiometric;
739		qcom,hw-settle-time-us = <200>;
740	};
741
742	camera-therm@2 {
743		reg = <2>;
744		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
745		qcom,ratiometric;
746		qcom,hw-settle-time-us = <200>;
747	};
748
749	therm1-therm@3 {
750		reg = <3>;
751		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
752		qcom,ratiometric;
753		qcom,hw-settle-time-us = <200>;
754	};
755
756	wide-rfc-therm@4 {
757		reg = <4>;
758		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
759		qcom,ratiometric;
760		qcom,hw-settle-time-us = <200>;
761	};
762
763	rear-tof-therm@5 {
764		reg = <5>;
765		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM5_100K_PU(1)>;
766		qcom,ratiometric;
767		qcom,hw-settle-time-us = <200>;
768	};
769
770	therm2-therm@6 {
771		reg = <6>;
772		io-channels = <&pmk8350_vadc PM8350_ADC7_GPIO3_100K_PU(1)>;
773		qcom,ratiometric;
774		qcom,hw-settle-time-us = <200>;
775	};
776
777	usb-conn-therm@7 {
778		reg = <7>;
779		io-channels = <&pmk8350_vadc PM8350B_ADC7_AMUX_THM5_100K_PU>;
780		qcom,ratiometric;
781		qcom,hw-settle-time-us = <200>;
782	};
783};
784
785&pmk8350_vadc {
786	status = "okay";
787
788	channel@3 {
789		reg = <PMK8350_ADC7_DIE_TEMP>;
790		label = "pmk8350_die_temp";
791	};
792
793	channel@44 {
794		reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
795		qcom,hw-settle-time = <200>;
796		qcom,ratiometric;
797		label = "pmk8350_xo_therm";
798	};
799
800	channel@103 {
801		reg = <PM8350_ADC7_DIE_TEMP(1)>;
802		label = "pm8350_die_temp";
803	};
804
805	channel@144 {
806		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
807		qcom,hw-settle-time = <200>;
808		qcom,ratiometric;
809		label = "skin_msm_temp";
810	};
811
812	channel@145 {
813		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
814		qcom,hw-settle-time = <200>;
815		qcom,ratiometric;
816		label = "camera_temp";
817	};
818
819	channel@146 {
820		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
821		qcom,hw-settle-time = <200>;
822		qcom,ratiometric;
823		label = "therm1_temp";
824	};
825
826	channel@147 {
827		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
828		qcom,hw-settle-time = <200>;
829		qcom,ratiometric;
830		label = "wide_rfc_temp";
831	};
832
833	channel@148 {
834		reg = <PM8350_ADC7_AMUX_THM5_100K_PU(1)>;
835		qcom,hw-settle-time = <200>;
836		qcom,ratiometric;
837		label = "rear_tof_temp";
838	};
839
840	channel@14c {
841		reg = <PM8350_ADC7_GPIO3_100K_PU(1)>;
842		qcom,hw-settle-time = <200>;
843		qcom,ratiometric;
844		label = "therm2_temp";
845	};
846
847	channel@303 {
848		reg = <PM8350B_ADC7_DIE_TEMP>;
849		label = "pm8350b_die_temp";
850	};
851
852	channel@348 {
853		reg = <PM8350B_ADC7_AMUX_THM5_100K_PU>;
854		qcom,hw-settle-time = <200>;
855		qcom,ratiometric;
856		label = "usb_conn_temp";
857	};
858
859	channel@403 {
860		reg = <PMR735A_ADC7_DIE_TEMP>;
861		label = "pmr735a_die_temp";
862	};
863
864	channel@44a {
865		reg = <PMR735A_ADC7_GPIO1_100K_PU>;
866		qcom,hw-settle-time = <200>;
867		qcom,ratiometric;
868		label = "qtm_w_temp";
869	};
870
871	channel@44b {
872		reg = <PMR735A_ADC7_GPIO2_100K_PU>;
873		qcom,hw-settle-time = <200>;
874		qcom,ratiometric;
875		label = "qtm_n_temp";
876	};
877};
878
879&remoteproc_adsp {
880	status = "okay";
881	firmware-name = "qcom/sm8450/adsp.mbn";
882};
883
884&remoteproc_cdsp {
885	status = "okay";
886	firmware-name = "qcom/sm8450/cdsp.mbn";
887};
888
889&remoteproc_mpss {
890	status = "okay";
891	firmware-name = "qcom/sm8450/modem.mbn";
892};
893
894&remoteproc_slpi {
895	status = "okay";
896	firmware-name = "qcom/sm8450/slpi.mbn";
897};
898
899&qupv3_id_0 {
900	status = "okay";
901};
902
903&qupv3_id_1 {
904	status = "okay";
905};
906
907&sdhc_2 {
908	cd-gpios = <&tlmm 92 GPIO_ACTIVE_HIGH>;
909	pinctrl-names = "default", "sleep";
910	pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
911	pinctrl-1 = <&sdc2_sleep_state &sdc2_card_det_n>;
912	vmmc-supply = <&vreg_l9c_2p96>;
913	vqmmc-supply = <&vreg_l6c_1p8>;
914	no-sdio;
915	no-mmc;
916	status = "okay";
917};
918
919&sound {
920	compatible = "qcom,sm8450-sndcard";
921	model = "SM8450-HDK";
922	audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
923			"SpkrRight IN", "WSA_SPK2 OUT",
924			"IN1_HPHL", "HPHL_OUT",
925			"IN2_HPHR", "HPHR_OUT",
926			"AMIC1", "MIC BIAS1",
927			"AMIC2", "MIC BIAS2",
928			"AMIC3", "MIC BIAS3",
929			"AMIC4", "MIC BIAS3",
930			"AMIC5", "MIC BIAS4",
931			"VA DMIC0", "MIC BIAS3",
932			"VA DMIC1", "MIC BIAS3",
933			"VA DMIC2", "MIC BIAS1",
934			"VA DMIC3", "MIC BIAS1",
935			"TX DMIC0", "MIC BIAS3",
936			"TX DMIC1", "MIC BIAS3",
937			"TX DMIC2", "MIC BIAS1",
938			"TX DMIC3", "MIC BIAS1",
939			"TX SWR_INPUT0", "ADC1_OUTPUT",
940			"TX SWR_INPUT1", "ADC2_OUTPUT",
941			"TX SWR_INPUT0", "ADC3_OUTPUT",
942			"TX SWR_INPUT1", "ADC4_OUTPUT";
943
944	wcd-playback-dai-link {
945		link-name = "WCD Playback";
946
947		cpu {
948			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
949		};
950
951		codec {
952			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
953		};
954
955		platform {
956			sound-dai = <&q6apm>;
957		};
958	};
959
960	wcd-capture-dai-link {
961		link-name = "WCD Capture";
962
963		cpu {
964			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
965		};
966
967		codec {
968			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
969		};
970
971		platform {
972			sound-dai = <&q6apm>;
973		};
974	};
975
976	wsa-dai-link {
977		link-name = "WSA Playback";
978
979		cpu {
980			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
981		};
982
983		codec {
984			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
985		};
986
987		platform {
988			sound-dai = <&q6apm>;
989		};
990	};
991
992	va-dai-link {
993		link-name = "VA Capture";
994
995		cpu {
996			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
997		};
998
999		codec {
1000			sound-dai = <&vamacro 0>;
1001		};
1002
1003		platform {
1004			sound-dai = <&q6apm>;
1005		};
1006	};
1007};
1008
1009&swr0 {
1010	status = "okay";
1011
1012	left_spkr: speaker@0,1 {
1013		compatible = "sdw10217020200";
1014		reg = <0 1>;
1015		pinctrl-names = "default";
1016		pinctrl-0 = <&spkr_1_sd_n_active>;
1017		powerdown-gpios = <&tlmm 1 GPIO_ACTIVE_LOW>;
1018		#sound-dai-cells = <0>;
1019		sound-name-prefix = "SpkrLeft";
1020		#thermal-sensor-cells = <0>;
1021		vdd-supply = <&vreg_s10b_1p8>;
1022	};
1023
1024	right_spkr: speaker@0,2 {
1025		compatible = "sdw10217020200";
1026		reg = <0 2>;
1027		pinctrl-names = "default";
1028		pinctrl-0 = <&spkr_2_sd_n_active>;
1029		powerdown-gpios = <&tlmm 89 GPIO_ACTIVE_LOW>;
1030		#sound-dai-cells = <0>;
1031		sound-name-prefix = "SpkrRight";
1032		#thermal-sensor-cells = <0>;
1033		vdd-supply = <&vreg_s10b_1p8>;
1034	};
1035};
1036
1037&swr1 {
1038	status = "okay";
1039
1040	wcd_rx: codec@0,4 {
1041		compatible = "sdw20217010d00";
1042		reg = <0 4>;
1043		qcom,rx-port-mapping = <1 2 3 4 5>;
1044	};
1045};
1046
1047&swr2 {
1048	status = "okay";
1049
1050	wcd_tx: codec@0,3 {
1051		compatible = "sdw20217010d00";
1052		reg = <0 3>;
1053		qcom,tx-port-mapping = <1 1 2 3>;
1054	};
1055};
1056
1057&tlmm {
1058	gpio-reserved-ranges = <28 4>, <36 4>;
1059
1060	lt9611_irq_pin: lt9611-irq-state {
1061		pins = "gpio44";
1062		function = "gpio";
1063		bias-disable;
1064	};
1065
1066	lt9611_rst_pin: lt9611-rst-state {
1067		pins = "gpio107";
1068		function = "gpio";
1069		output-high;
1070	};
1071
1072	sdc2_card_det_n: sd-card-det-n-state {
1073		pins = "gpio92";
1074		function = "gpio";
1075		drive-strength = <2>;
1076		bias-pull-up;
1077	};
1078};
1079
1080&uart7 {
1081	status = "okay";
1082};
1083
1084&ufs_mem_hc {
1085	status = "okay";
1086
1087	reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
1088
1089	vcc-supply = <&vreg_l7b_2p5>;
1090	vcc-max-microamp = <1100000>;
1091	vccq-supply = <&vreg_l9b_1p2>;
1092	vccq-max-microamp = <1200000>;
1093	vdd-hba-supply = <&vreg_l9b_1p2>;
1094};
1095
1096&ufs_mem_phy {
1097	status = "okay";
1098
1099	vdda-phy-supply = <&vreg_l5b_0p88>;
1100	vdda-pll-supply = <&vreg_l6b_1p2>;
1101};
1102
1103&usb_1 {
1104	status = "okay";
1105};
1106
1107&usb_1_dwc3 {
1108	dr_mode = "otg";
1109	usb-role-switch;
1110};
1111
1112&usb_1_dwc3_hs {
1113	remote-endpoint = <&pmic_glink_hs_in>;
1114};
1115
1116&usb_1_dwc3_ss {
1117	remote-endpoint = <&usb_1_qmpphy_usb_ss_in>;
1118};
1119
1120&usb_1_hsphy {
1121	status = "okay";
1122
1123	vdda-pll-supply = <&vreg_l5b_0p88>;
1124	vdda18-supply = <&vreg_l1c_1p8>;
1125	vdda33-supply = <&vreg_l2b_3p07>;
1126};
1127
1128&usb_1_qmpphy {
1129	status = "okay";
1130
1131	vdda-phy-supply = <&vreg_l6b_1p2>;
1132	vdda-pll-supply = <&vreg_l1b_0p91>;
1133
1134	orientation-switch;
1135};
1136
1137&usb_1_qmpphy_dp_in {
1138	remote-endpoint = <&mdss_dp0_out>;
1139};
1140
1141&usb_1_qmpphy_out {
1142	remote-endpoint = <&pmic_glink_ss_in>;
1143};
1144
1145&usb_1_qmpphy_usb_ss_in {
1146	remote-endpoint = <&usb_1_dwc3_ss>;
1147};
1148
1149&vamacro {
1150	pinctrl-0 = <&dmic01_default>, <&dmic23_default>;
1151	pinctrl-names = "default";
1152	vdd-micb-supply = <&vreg_s10b_1p8>;
1153	qcom,dmic-sample-rate = <600000>;
1154
1155	status = "okay";
1156};
1157
1158&tlmm {
1159	spkr_1_sd_n_active: spkr-1-sd-n-active-state {
1160		pins = "gpio1";
1161		function = "gpio";
1162		drive-strength = <16>;
1163		bias-disable;
1164		output-low;
1165	};
1166
1167	spkr_2_sd_n_active: spkr-2-sd-n-active-state {
1168		pins = "gpio89";
1169		function = "gpio";
1170		drive-strength = <16>;
1171		bias-disable;
1172		output-low;
1173	};
1174
1175	wcd_default: wcd-reset-n-active-state {
1176		pins = "gpio43";
1177		function = "gpio";
1178		drive-strength = <16>;
1179		bias-disable;
1180		output-low;
1181	};
1182};
1183