xref: /linux/arch/arm64/boot/dts/qcom/sm8450-hdk.dts (revision 335bbdf01d25517ae832ac1807fd8323c1f4f3b9)
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&i2c9 {
584	clock-frequency = <400000>;
585	status = "okay";
586
587	lt9611_codec: hdmi-bridge@2b {
588		compatible = "lontium,lt9611uxc";
589		reg = <0x2b>;
590
591		interrupts-extended = <&tlmm 44 IRQ_TYPE_EDGE_FALLING>;
592
593		reset-gpios = <&tlmm 107 GPIO_ACTIVE_HIGH>;
594
595		vdd-supply = <&lt9611_1v2>;
596		vcc-supply = <&lt9611_3v3>;
597
598		pinctrl-names = "default";
599		pinctrl-0 = <&lt9611_irq_pin &lt9611_rst_pin>;
600
601		ports {
602			#address-cells = <1>;
603			#size-cells = <0>;
604
605			port@0 {
606				reg = <0>;
607
608				lt9611_a: endpoint {
609					remote-endpoint = <&mdss_dsi0_out>;
610				};
611			};
612
613			port@2 {
614				reg = <2>;
615
616				lt9611_out: endpoint {
617					remote-endpoint = <&hdmi_connector_out>;
618				};
619			};
620		};
621	};
622};
623
624&i2c5 {
625	clock-frequency = <100000>;
626
627	status = "okay";
628
629	typec-mux@42 {
630		compatible = "fcs,fsa4480";
631		reg = <0x42>;
632
633		interrupts-extended = <&tlmm 2 IRQ_TYPE_LEVEL_LOW>;
634
635		vcc-supply = <&vreg_bob>;
636		mode-switch;
637		orientation-switch;
638
639		port {
640			fsa4480_sbu_mux: endpoint {
641				remote-endpoint = <&pmic_glink_sbu>;
642			};
643		};
644	};
645};
646
647&mdss {
648	status = "okay";
649};
650
651&mdss_dsi0 {
652	vdda-supply = <&vreg_l6b_1p2>;
653	status = "okay";
654};
655
656&mdss_dsi0_out {
657	remote-endpoint = <&lt9611_a>;
658	data-lanes = <0 1 2 3>;
659};
660
661&mdss_dsi0_phy {
662	vdds-supply = <&vreg_l5b_0p88>;
663	status = "okay";
664};
665
666&mdss_dp0 {
667	status = "okay";
668
669	ports {
670		port@1 {
671			reg = <1>;
672
673			mdss_dp0_out: endpoint {
674				data-lanes = <0 1>;
675				remote-endpoint = <&usb_1_qmpphy_dp_in>;
676			};
677		};
678	};
679};
680
681&pcie0 {
682	status = "okay";
683	max-link-speed = <2>;
684};
685
686&pcie0_phy {
687	status = "okay";
688	vdda-phy-supply = <&vreg_l5b_0p88>;
689	vdda-pll-supply = <&vreg_l6b_1p2>;
690};
691
692&pcie1 {
693	status = "okay";
694};
695
696&pcie1_phy {
697	status = "okay";
698	vdda-phy-supply = <&vreg_l2h_0p91>;
699	vdda-pll-supply = <&vreg_l6b_1p2>;
700};
701
702&pm8350_temp_alarm {
703	io-channels = <&pmk8350_vadc PM8350_ADC7_DIE_TEMP(1)>;
704	io-channel-names = "thermal";
705};
706
707&pm8350b_temp_alarm {
708	io-channels = <&pmk8350_vadc PM8350B_ADC7_DIE_TEMP>;
709	io-channel-names = "thermal";
710};
711
712&pmr735a_temp_alarm {
713	io-channels = <&pmk8350_vadc PMR735A_ADC7_DIE_TEMP>;
714	io-channel-names = "thermal";
715};
716
717&pmk8350_adc_tm {
718	status = "okay";
719
720	xo-therm@0 {
721		reg = <0>;
722		io-channels = <&pmk8350_vadc PMK8350_ADC7_AMUX_THM1_100K_PU>;
723		qcom,ratiometric;
724		qcom,hw-settle-time-us = <200>;
725	};
726
727	skin-msm-therm@1 {
728		reg = <1>;
729		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
730		qcom,ratiometric;
731		qcom,hw-settle-time-us = <200>;
732	};
733
734	camera-therm@2 {
735		reg = <2>;
736		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
737		qcom,ratiometric;
738		qcom,hw-settle-time-us = <200>;
739	};
740
741	therm1-therm@3 {
742		reg = <3>;
743		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
744		qcom,ratiometric;
745		qcom,hw-settle-time-us = <200>;
746	};
747
748	wide-rfc-therm@4 {
749		reg = <4>;
750		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
751		qcom,ratiometric;
752		qcom,hw-settle-time-us = <200>;
753	};
754
755	rear-tof-therm@5 {
756		reg = <5>;
757		io-channels = <&pmk8350_vadc PM8350_ADC7_AMUX_THM5_100K_PU(1)>;
758		qcom,ratiometric;
759		qcom,hw-settle-time-us = <200>;
760	};
761
762	therm2-therm@6 {
763		reg = <6>;
764		io-channels = <&pmk8350_vadc PM8350_ADC7_GPIO3_100K_PU(1)>;
765		qcom,ratiometric;
766		qcom,hw-settle-time-us = <200>;
767	};
768
769	usb-conn-therm@7 {
770		reg = <7>;
771		io-channels = <&pmk8350_vadc PM8350B_ADC7_AMUX_THM5_100K_PU>;
772		qcom,ratiometric;
773		qcom,hw-settle-time-us = <200>;
774	};
775};
776
777&pmk8350_vadc {
778	status = "okay";
779
780	channel@3 {
781		reg = <PMK8350_ADC7_DIE_TEMP>;
782		label = "pmk8350_die_temp";
783	};
784
785	channel@44 {
786		reg = <PMK8350_ADC7_AMUX_THM1_100K_PU>;
787		qcom,hw-settle-time = <200>;
788		qcom,ratiometric;
789		label = "pmk8350_xo_therm";
790	};
791
792	channel@103 {
793		reg = <PM8350_ADC7_DIE_TEMP(1)>;
794		label = "pm8350_die_temp";
795	};
796
797	channel@144 {
798		reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;
799		qcom,hw-settle-time = <200>;
800		qcom,ratiometric;
801		label = "skin_msm_temp";
802	};
803
804	channel@145 {
805		reg = <PM8350_ADC7_AMUX_THM2_100K_PU(1)>;
806		qcom,hw-settle-time = <200>;
807		qcom,ratiometric;
808		label = "camera_temp";
809	};
810
811	channel@146 {
812		reg = <PM8350_ADC7_AMUX_THM3_100K_PU(1)>;
813		qcom,hw-settle-time = <200>;
814		qcom,ratiometric;
815		label = "therm1_temp";
816	};
817
818	channel@147 {
819		reg = <PM8350_ADC7_AMUX_THM4_100K_PU(1)>;
820		qcom,hw-settle-time = <200>;
821		qcom,ratiometric;
822		label = "wide_rfc_temp";
823	};
824
825	channel@148 {
826		reg = <PM8350_ADC7_AMUX_THM5_100K_PU(1)>;
827		qcom,hw-settle-time = <200>;
828		qcom,ratiometric;
829		label = "rear_tof_temp";
830	};
831
832	channel@14c {
833		reg = <PM8350_ADC7_GPIO3_100K_PU(1)>;
834		qcom,hw-settle-time = <200>;
835		qcom,ratiometric;
836		label = "therm2_temp";
837	};
838
839	channel@303 {
840		reg = <PM8350B_ADC7_DIE_TEMP>;
841		label = "pm8350b_die_temp";
842	};
843
844	channel@348 {
845		reg = <PM8350B_ADC7_AMUX_THM5_100K_PU>;
846		qcom,hw-settle-time = <200>;
847		qcom,ratiometric;
848		label = "usb_conn_temp";
849	};
850
851	channel@403 {
852		reg = <PMR735A_ADC7_DIE_TEMP>;
853		label = "pmr735a_die_temp";
854	};
855
856	channel@44a {
857		reg = <PMR735A_ADC7_GPIO1_100K_PU>;
858		qcom,hw-settle-time = <200>;
859		qcom,ratiometric;
860		label = "qtm_w_temp";
861	};
862
863	channel@44b {
864		reg = <PMR735A_ADC7_GPIO2_100K_PU>;
865		qcom,hw-settle-time = <200>;
866		qcom,ratiometric;
867		label = "qtm_n_temp";
868	};
869};
870
871&remoteproc_adsp {
872	status = "okay";
873	firmware-name = "qcom/sm8450/adsp.mbn";
874};
875
876&remoteproc_cdsp {
877	status = "okay";
878	firmware-name = "qcom/sm8450/cdsp.mbn";
879};
880
881&remoteproc_mpss {
882	status = "okay";
883	firmware-name = "qcom/sm8450/modem.mbn";
884};
885
886&remoteproc_slpi {
887	status = "okay";
888	firmware-name = "qcom/sm8450/slpi.mbn";
889};
890
891&qupv3_id_0 {
892	status = "okay";
893};
894
895&qupv3_id_1 {
896	status = "okay";
897};
898
899&sdhc_2 {
900	cd-gpios = <&tlmm 92 GPIO_ACTIVE_HIGH>;
901	pinctrl-names = "default", "sleep";
902	pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
903	pinctrl-1 = <&sdc2_sleep_state &sdc2_card_det_n>;
904	vmmc-supply = <&vreg_l9c_2p96>;
905	vqmmc-supply = <&vreg_l6c_1p8>;
906	no-sdio;
907	no-mmc;
908	status = "okay";
909};
910
911&sound {
912	compatible = "qcom,sm8450-sndcard";
913	model = "SM8450-HDK";
914	audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
915			"SpkrRight IN", "WSA_SPK2 OUT",
916			"IN1_HPHL", "HPHL_OUT",
917			"IN2_HPHR", "HPHR_OUT",
918			"AMIC1", "MIC BIAS1",
919			"AMIC2", "MIC BIAS2",
920			"AMIC3", "MIC BIAS3",
921			"AMIC4", "MIC BIAS3",
922			"AMIC5", "MIC BIAS4",
923			"VA DMIC0", "MIC BIAS3",
924			"VA DMIC1", "MIC BIAS3",
925			"VA DMIC2", "MIC BIAS1",
926			"VA DMIC3", "MIC BIAS1",
927			"TX DMIC0", "MIC BIAS3",
928			"TX DMIC1", "MIC BIAS3",
929			"TX DMIC2", "MIC BIAS1",
930			"TX DMIC3", "MIC BIAS1",
931			"TX SWR_INPUT0", "ADC1_OUTPUT",
932			"TX SWR_INPUT1", "ADC2_OUTPUT",
933			"TX SWR_INPUT2", "ADC3_OUTPUT",
934			"TX SWR_INPUT3", "ADC4_OUTPUT";
935
936	wcd-playback-dai-link {
937		link-name = "WCD Playback";
938
939		cpu {
940			sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
941		};
942
943		codec {
944			sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
945		};
946
947		platform {
948			sound-dai = <&q6apm>;
949		};
950	};
951
952	wcd-capture-dai-link {
953		link-name = "WCD Capture";
954
955		cpu {
956			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
957		};
958
959		codec {
960			sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
961		};
962
963		platform {
964			sound-dai = <&q6apm>;
965		};
966	};
967
968	wsa-dai-link {
969		link-name = "WSA Playback";
970
971		cpu {
972			sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
973		};
974
975		codec {
976			sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
977		};
978
979		platform {
980			sound-dai = <&q6apm>;
981		};
982	};
983
984	va-dai-link {
985		link-name = "VA Capture";
986
987		cpu {
988			sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
989		};
990
991		codec {
992			sound-dai = <&vamacro 0>;
993		};
994
995		platform {
996			sound-dai = <&q6apm>;
997		};
998	};
999};
1000
1001&swr0 {
1002	status = "okay";
1003
1004	left_spkr: speaker@0,1 {
1005		compatible = "sdw10217020200";
1006		reg = <0 1>;
1007		pinctrl-names = "default";
1008		pinctrl-0 = <&spkr_1_sd_n_active>;
1009		powerdown-gpios = <&tlmm 1 GPIO_ACTIVE_LOW>;
1010		#sound-dai-cells = <0>;
1011		sound-name-prefix = "SpkrLeft";
1012		#thermal-sensor-cells = <0>;
1013		vdd-supply = <&vreg_s10b_1p8>;
1014	};
1015
1016	right_spkr: speaker@0,2 {
1017		compatible = "sdw10217020200";
1018		reg = <0 2>;
1019		pinctrl-names = "default";
1020		pinctrl-0 = <&spkr_2_sd_n_active>;
1021		powerdown-gpios = <&tlmm 89 GPIO_ACTIVE_LOW>;
1022		#sound-dai-cells = <0>;
1023		sound-name-prefix = "SpkrRight";
1024		#thermal-sensor-cells = <0>;
1025		vdd-supply = <&vreg_s10b_1p8>;
1026	};
1027};
1028
1029&swr1 {
1030	status = "okay";
1031
1032	wcd_rx: codec@0,4 {
1033		compatible = "sdw20217010d00";
1034		reg = <0 4>;
1035		qcom,rx-port-mapping = <1 2 3 4 5>;
1036	};
1037};
1038
1039&swr2 {
1040	status = "okay";
1041
1042	wcd_tx: codec@0,3 {
1043		compatible = "sdw20217010d00";
1044		reg = <0 3>;
1045		qcom,tx-port-mapping = <1 1 2 3>;
1046	};
1047};
1048
1049&tlmm {
1050	gpio-reserved-ranges = <28 4>, <36 4>;
1051
1052	lt9611_irq_pin: lt9611-irq-state {
1053		pins = "gpio44";
1054		function = "gpio";
1055		bias-disable;
1056	};
1057
1058	lt9611_rst_pin: lt9611-rst-state {
1059		pins = "gpio107";
1060		function = "gpio";
1061		output-high;
1062	};
1063
1064	sdc2_card_det_n: sd-card-det-n-state {
1065		pins = "gpio92";
1066		function = "gpio";
1067		drive-strength = <2>;
1068		bias-pull-up;
1069	};
1070};
1071
1072&uart7 {
1073	status = "okay";
1074};
1075
1076&ufs_mem_hc {
1077	status = "okay";
1078
1079	reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
1080
1081	vcc-supply = <&vreg_l7b_2p5>;
1082	vcc-max-microamp = <1100000>;
1083	vccq-supply = <&vreg_l9b_1p2>;
1084	vccq-max-microamp = <1200000>;
1085	vdd-hba-supply = <&vreg_l9b_1p2>;
1086};
1087
1088&ufs_mem_phy {
1089	status = "okay";
1090
1091	vdda-phy-supply = <&vreg_l5b_0p88>;
1092	vdda-pll-supply = <&vreg_l6b_1p2>;
1093};
1094
1095&usb_1 {
1096	status = "okay";
1097};
1098
1099&usb_1_dwc3 {
1100	dr_mode = "otg";
1101	usb-role-switch;
1102};
1103
1104&usb_1_dwc3_hs {
1105	remote-endpoint = <&pmic_glink_hs_in>;
1106};
1107
1108&usb_1_dwc3_ss {
1109	remote-endpoint = <&usb_1_qmpphy_usb_ss_in>;
1110};
1111
1112&usb_1_hsphy {
1113	status = "okay";
1114
1115	vdda-pll-supply = <&vreg_l5b_0p88>;
1116	vdda18-supply = <&vreg_l1c_1p8>;
1117	vdda33-supply = <&vreg_l2b_3p07>;
1118};
1119
1120&usb_1_qmpphy {
1121	status = "okay";
1122
1123	vdda-phy-supply = <&vreg_l6b_1p2>;
1124	vdda-pll-supply = <&vreg_l1b_0p91>;
1125
1126	orientation-switch;
1127};
1128
1129&usb_1_qmpphy_dp_in {
1130	remote-endpoint = <&mdss_dp0_out>;
1131};
1132
1133&usb_1_qmpphy_out {
1134	remote-endpoint = <&pmic_glink_ss_in>;
1135};
1136
1137&usb_1_qmpphy_usb_ss_in {
1138	remote-endpoint = <&usb_1_dwc3_ss>;
1139};
1140
1141&vamacro {
1142	pinctrl-0 = <&dmic01_default>, <&dmic02_default>;
1143	pinctrl-names = "default";
1144	vdd-micb-supply = <&vreg_s10b_1p8>;
1145	qcom,dmic-sample-rate = <600000>;
1146
1147	status = "okay";
1148};
1149
1150&tlmm {
1151	spkr_1_sd_n_active: spkr-1-sd-n-active-state {
1152		pins = "gpio1";
1153		function = "gpio";
1154		drive-strength = <16>;
1155		bias-disable;
1156		output-low;
1157	};
1158
1159	spkr_2_sd_n_active: spkr-2-sd-n-active-state {
1160		pins = "gpio89";
1161		function = "gpio";
1162		drive-strength = <16>;
1163		bias-disable;
1164		output-low;
1165	};
1166
1167	wcd_default: wcd-reset-n-active-state {
1168		pins = "gpio43";
1169		function = "gpio";
1170		drive-strength = <16>;
1171		bias-disable;
1172		output-low;
1173	};
1174};
1175