blob: 21b2ca1def8363cbaf7857215f42ff8492a8f7fa [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
4 */
5
6/dts-v1/;
7
8#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
9#include <dt-bindings/sound/qcom,q6afe.h>
10#include <dt-bindings/sound/qcom,q6asm.h>
11#include <dt-bindings/gpio/gpio.h>
12#include "sm8250.dtsi"
13#include "pm8150.dtsi"
14#include "pm8150b.dtsi"
15#include "pm8150l.dtsi"
16#include "pm8009.dtsi"
17
18/ {
19 model = "Qualcomm Technologies, Inc. SM8250 MTP";
20 compatible = "qcom,sm8250-mtp", "qcom,sm8250";
21 chassis-type = "handset";
22
23 aliases {
24 serial0 = &uart12;
25 };
26
27 wcd938x: audio-codec {
28 compatible = "qcom,wcd9380-codec";
29
30 reset-gpios = <&tlmm 32 GPIO_ACTIVE_LOW>;
31
32 vdd-buck-supply = <&vreg_s4a_1p8>;
33 vdd-rxtx-supply = <&vreg_s4a_1p8>;
34 vdd-io-supply = <&vreg_s4a_1p8>;
35 vdd-mic-bias-supply = <&vreg_bob>;
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 #sound-dai-cells = <1>;
48 };
49
50 chosen {
51 stdout-path = "serial0:115200n8";
52 };
53
54 thermal-zones {
55 camera-thermal {
Tom Rini53633a82024-02-29 12:33:36 -050056 thermal-sensors = <&pm8150l_adc_tm 0>;
57
58 trips {
59 active-config0 {
60 temperature = <125000>;
61 hysteresis = <1000>;
62 type = "passive";
63 };
64 };
65 };
66
67 conn-thermal {
Tom Rini53633a82024-02-29 12:33:36 -050068 thermal-sensors = <&pm8150b_adc_tm 0>;
69
70 trips {
71 active-config0 {
72 temperature = <125000>;
73 hysteresis = <1000>;
74 type = "passive";
75 };
76 };
77 };
78
79 mmw-pa1-thermal {
Tom Rini53633a82024-02-29 12:33:36 -050080 thermal-sensors = <&pm8150_adc_tm 2>;
81
82 trips {
83 active-config0 {
84 temperature = <125000>;
85 hysteresis = <1000>;
86 type = "passive";
87 };
88 };
89 };
90
91 mmw-pa2-thermal {
Tom Rini53633a82024-02-29 12:33:36 -050092 thermal-sensors = <&pm8150l_adc_tm 2>;
93
94 trips {
95 active-config0 {
96 temperature = <125000>;
97 hysteresis = <1000>;
98 type = "passive";
99 };
100 };
101 };
102
103 skin-msm-thermal {
Tom Rini53633a82024-02-29 12:33:36 -0500104 thermal-sensors = <&pm8150l_adc_tm 1>;
105
106 trips {
107 active-config0 {
108 temperature = <125000>;
109 hysteresis = <1000>;
110 type = "passive";
111 };
112 };
113 };
114
115 skin-thermal {
Tom Rini53633a82024-02-29 12:33:36 -0500116 thermal-sensors = <&pm8150_adc_tm 1>;
117
118 trips {
119 active-config0 {
120 temperature = <125000>;
121 hysteresis = <1000>;
122 type = "passive";
123 };
124 };
125 };
126
127 xo-thermal {
Tom Rini53633a82024-02-29 12:33:36 -0500128 thermal-sensors = <&pm8150_adc_tm 0>;
129
130 trips {
131 active-config0 {
132 temperature = <125000>;
133 hysteresis = <1000>;
134 type = "passive";
135 };
136 };
137 };
138 };
139
140 vph_pwr: vph-pwr-regulator {
141 compatible = "regulator-fixed";
142 regulator-name = "vph_pwr";
143 regulator-min-microvolt = <3700000>;
144 regulator-max-microvolt = <3700000>;
145 };
146
147 vreg_s4a_1p8: pm8150-s4 {
148 compatible = "regulator-fixed";
149 regulator-name = "vreg_s4a_1p8";
150
151 regulator-min-microvolt = <1800000>;
152 regulator-max-microvolt = <1800000>;
153
154 regulator-always-on;
155 regulator-boot-on;
156
157 vin-supply = <&vph_pwr>;
158 };
159
160 vreg_s6c_0p88: smpc6-regulator {
161 compatible = "regulator-fixed";
162 regulator-name = "vreg_s6c_0p88";
163
164 regulator-min-microvolt = <880000>;
165 regulator-max-microvolt = <880000>;
166 regulator-always-on;
167 vin-supply = <&vph_pwr>;
168 };
169};
170
171&adsp {
172 status = "okay";
173 firmware-name = "qcom/sm8250/adsp.mbn";
174};
175
176&apps_rsc {
177 regulators-0 {
178 compatible = "qcom,pm8150-rpmh-regulators";
179 qcom,pmic-id = "a";
180
181 vdd-s1-supply = <&vph_pwr>;
182 vdd-s2-supply = <&vph_pwr>;
183 vdd-s3-supply = <&vph_pwr>;
184 vdd-s4-supply = <&vph_pwr>;
185 vdd-s5-supply = <&vph_pwr>;
186 vdd-s6-supply = <&vph_pwr>;
187 vdd-s7-supply = <&vph_pwr>;
188 vdd-s8-supply = <&vph_pwr>;
189 vdd-s9-supply = <&vph_pwr>;
190 vdd-s10-supply = <&vph_pwr>;
191 vdd-l1-l8-l11-supply = <&vreg_s6c_0p88>;
192 vdd-l2-l10-supply = <&vreg_bob>;
193 vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p95>;
194 vdd-l6-l9-supply = <&vreg_s8c_1p3>;
195 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
196 vdd-l13-l16-l17-supply = <&vreg_bob>;
197
198 vreg_s5a_1p9: smps5 {
199 regulator-name = "vreg_s5a_1p9";
200 regulator-min-microvolt = <1904000>;
201 regulator-max-microvolt = <2000000>;
202 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
203 };
204
205 vreg_s6a_0p95: smps6 {
206 regulator-name = "vreg_s6a_0p95";
207 regulator-min-microvolt = <920000>;
208 regulator-max-microvolt = <1128000>;
209 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
210 };
211
212 vreg_l2a_3p1: ldo2 {
213 regulator-name = "vreg_l2a_3p1";
214 regulator-min-microvolt = <3072000>;
215 regulator-max-microvolt = <3072000>;
216 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
217 };
218
219 vreg_l3a_0p9: ldo3 {
220 regulator-name = "vreg_l3a_0p9";
221 regulator-min-microvolt = <928000>;
222 regulator-max-microvolt = <932000>;
223 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
224 };
225
226 vreg_l5a_0p875: ldo5 {
227 regulator-name = "vreg_l5a_0p875";
228 regulator-min-microvolt = <880000>;
229 regulator-max-microvolt = <880000>;
230 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
231 };
232
233 vreg_l6a_1p2: ldo6 {
234 regulator-name = "vreg_l6a_1p2";
235 regulator-min-microvolt = <1200000>;
236 regulator-max-microvolt = <1200000>;
237 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
238 };
239
240 vreg_l7a_1p7: ldo7 {
241 regulator-name = "vreg_l7a_1p7";
242 regulator-min-microvolt = <1704000>;
243 regulator-max-microvolt = <1800000>;
244 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
245 };
246
247 vreg_l9a_1p2: ldo9 {
248 regulator-name = "vreg_l9a_1p2";
249 regulator-min-microvolt = <1200000>;
250 regulator-max-microvolt = <1200000>;
251 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
252 };
253
254 vreg_l10a_1p8: ldo10 {
255 regulator-name = "vreg_l10a_1p8";
256 regulator-min-microvolt = <1800000>;
257 regulator-max-microvolt = <1800000>;
258 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
259 };
260
261 vreg_l12a_1p8: ldo12 {
262 regulator-name = "vreg_l12a_1p8";
263 regulator-min-microvolt = <1800000>;
264 regulator-max-microvolt = <1800000>;
265 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
266 };
267
268 vreg_l13a_ts_3p0: ldo13 {
269 regulator-name = "vreg_l13a_ts_3p0";
270 regulator-min-microvolt = <3008000>;
271 regulator-max-microvolt = <3008000>;
272 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
273 };
274
275 vreg_l14a_1p8: ldo14 {
276 regulator-name = "vreg_l14a_1p8";
277 regulator-min-microvolt = <1800000>;
278 regulator-max-microvolt = <1880000>;
279 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
280 };
281
282 vreg_l15a_11ad_io_1p8: ldo15 {
283 regulator-name = "vreg_l15a_11ad_io_1p8";
284 regulator-min-microvolt = <1800000>;
285 regulator-max-microvolt = <1800000>;
286 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
287 };
288
289 vreg_l16a_2p7: ldo16 {
290 regulator-name = "vreg_l16a_2p7";
291 regulator-min-microvolt = <2704000>;
292 regulator-max-microvolt = <2960000>;
293 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
294 };
295
296 vreg_l17a_3p0: ldo17 {
297 regulator-name = "vreg_l17a_3p0";
298 regulator-min-microvolt = <2856000>;
299 regulator-max-microvolt = <3008000>;
300 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
301 };
302
303 vreg_l18a_0p9: ldo18 {
304 regulator-name = "vreg_l18a_0p9";
305 regulator-min-microvolt = <912000>;
306 regulator-max-microvolt = <912000>;
307 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
308 };
309 };
310
311 regulators-1 {
312 compatible = "qcom,pm8150l-rpmh-regulators";
313 qcom,pmic-id = "c";
314
315 vdd-s1-supply = <&vph_pwr>;
316 vdd-s2-supply = <&vph_pwr>;
317 vdd-s3-supply = <&vph_pwr>;
318 vdd-s4-supply = <&vph_pwr>;
319 vdd-s5-supply = <&vph_pwr>;
320 vdd-s6-supply = <&vph_pwr>;
321 vdd-s7-supply = <&vph_pwr>;
322 vdd-s8-supply = <&vph_pwr>;
323 vdd-l1-l8-supply = <&vreg_s4a_1p8>;
324 vdd-l2-l3-supply = <&vreg_s8c_1p3>;
325 vdd-l4-l5-l6-supply = <&vreg_bob>;
326 vdd-l7-l11-supply = <&vreg_bob>;
327 vdd-l9-l10-supply = <&vreg_bob>;
328 vdd-bob-supply = <&vph_pwr>;
329
330 vreg_bob: bob {
331 regulator-name = "vreg_bob";
332 regulator-min-microvolt = <3008000>;
333 regulator-max-microvolt = <4000000>;
334 regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
335 };
336
337 vreg_s8c_1p3: smps8 {
338 regulator-name = "vreg_s8c_1p3";
339 regulator-min-microvolt = <1352000>;
340 regulator-max-microvolt = <1352000>;
341 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
342 };
343
344 vreg_l1c_1p8: ldo1 {
345 regulator-name = "vreg_l1c_1p8";
346 regulator-min-microvolt = <1800000>;
347 regulator-max-microvolt = <1800000>;
348 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
349 };
350
351 vreg_l2c_1p2: ldo2 {
352 regulator-name = "vreg_l2c_1p2";
353 regulator-min-microvolt = <1200000>;
354 regulator-max-microvolt = <1200000>;
355 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
356 };
357
358 vreg_l3c_0p92: ldo3 {
359 regulator-name = "vreg_l3c_0p92";
360 regulator-min-microvolt = <920000>;
361 regulator-max-microvolt = <920000>;
362 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
363 };
364
365 vreg_l4c_1p7: ldo4 {
366 regulator-name = "vreg_l4c_1p7";
367 regulator-min-microvolt = <1704000>;
368 regulator-max-microvolt = <2928000>;
369 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
370 };
371
372 vreg_l5c_1p8: ldo5 {
373 regulator-name = "vreg_l5c_1p8";
374 regulator-min-microvolt = <1800000>;
375 regulator-max-microvolt = <2928000>;
376 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
377 };
378
379 vreg_l6c_2p9: ldo6 {
380 regulator-name = "vreg_l6c_2p9";
381 regulator-min-microvolt = <1800000>;
382 regulator-max-microvolt = <2960000>;
383 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
384 };
385
386 vreg_l7c_cam_vcm0_2p85: ldo7 {
387 regulator-name = "vreg_l7c_cam_vcm0_2p85";
388 regulator-min-microvolt = <2856000>;
389 regulator-max-microvolt = <3104000>;
390 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
391 };
392
393 vreg_l8c_1p8: ldo8 {
394 regulator-name = "vreg_l8c_1p8";
395 regulator-min-microvolt = <1800000>;
396 regulator-max-microvolt = <1800000>;
397 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
398 };
399
400 vreg_l9c_2p9: ldo9 {
401 regulator-name = "vreg_l9c_2p9";
402 regulator-min-microvolt = <2704000>;
403 regulator-max-microvolt = <2960000>;
404 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
405 };
406
407 vreg_l10c_3p0: ldo10 {
408 regulator-name = "vreg_l10c_3p0";
409 regulator-min-microvolt = <3000000>;
410 regulator-max-microvolt = <3000000>;
411 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
412 };
413
414 vreg_l11c_3p3: ldo11 {
415 regulator-name = "vreg_l11c_3p3";
416 regulator-min-microvolt = <3000000>;
417 regulator-max-microvolt = <3312000>;
418 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
419 };
420 };
421
422 regulators-2 {
423 compatible = "qcom,pm8009-rpmh-regulators";
424 qcom,pmic-id = "f";
425
426 vdd-s1-supply = <&vph_pwr>;
427 vdd-s2-supply = <&vreg_bob>;
428 vdd-l2-supply = <&vreg_s8c_1p3>;
429 vdd-l5-l6-supply = <&vreg_bob>;
430 vdd-l7-supply = <&vreg_s4a_1p8>;
431
432 vreg_l1f_cam_dvdd1_1p1: ldo1 {
433 regulator-name = "vreg_l1f_cam_dvdd1_1p1";
434 regulator-min-microvolt = <1104000>;
435 regulator-max-microvolt = <1104000>;
436 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
437 };
438
439 vreg_l2f_cam_dvdd0_1p2: ldo2 {
440 regulator-name = "vreg_l2f_cam_dvdd0_1p2";
441 regulator-min-microvolt = <1200000>;
442 regulator-max-microvolt = <1200000>;
443 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
444 };
445
446 vreg_l3f_cam_dvdd2_1p05: ldo3 {
447 regulator-name = "vreg_l3f_cam_dvdd2_1p05";
448 regulator-min-microvolt = <1056000>;
449 regulator-max-microvolt = <1056000>;
450 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
451 };
452
453 vreg_l5f_cam_avdd0_2p85: ldo5 {
454 regulator-name = "vreg_l5f_cam_avdd0_2p85";
455 regulator-min-microvolt = <2800000>;
456 regulator-max-microvolt = <2800000>;
457 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
458 };
459
460 vreg_l6f_cam_avdd1_2p85: ldo6 {
461 regulator-name = "vreg_l6f_cam_avdd1_2p85";
462 regulator-min-microvolt = <2856000>;
463 regulator-max-microvolt = <2856000>;
464 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
465 };
466
467 vreg_l7f_1p8: ldo7 {
468 regulator-name = "vreg_l7f_1p8";
469 regulator-min-microvolt = <1800000>;
470 regulator-max-microvolt = <1800000>;
471 regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
472 };
473 };
474};
475
476&cdsp {
477 status = "okay";
478 firmware-name = "qcom/sm8250/cdsp.mbn";
479};
480
481&gmu {
482 status = "okay";
483};
484
485&gpu {
486 status = "okay";
487
488 zap-shader {
489 memory-region = <&gpu_mem>;
490 firmware-name = "qcom/sm8250/a650_zap.mbn";
491 };
492};
493
494&i2c1 {
495 status = "okay";
496 clock-frequency = <1000000>;
497
498 /* NQ NFC chip @28 */
499};
500
501&i2c13 {
502 status = "okay";
503
504 /* st,stmfts @ 49 */
505};
506
507&i2c15 {
508 status = "okay";
509
510 /* smb1390 @ 10 */
511 /* rtc6226 @ 64 */
512};
513
514&pm8150_adc {
515 channel@4c {
516 reg = <ADC5_XO_THERM_100K_PU>;
517 qcom,ratiometric;
518 qcom,hw-settle-time = <200>;
519 label = "xo_therm";
520 };
521
522 channel@4d {
523 reg = <ADC5_AMUX_THM1_100K_PU>;
524 qcom,ratiometric;
525 qcom,hw-settle-time = <200>;
526 label = "skin_therm";
527 };
528
529 channel@4e {
530 reg = <ADC5_AMUX_THM2_100K_PU>;
531 qcom,ratiometric;
532 qcom,hw-settle-time = <200>;
533 label = "pa_therm1";
534 };
535};
536
537&pm8150_adc_tm {
538 status = "okay";
539
540 xo-therm@0 {
541 reg = <0>;
542 io-channels = <&pm8150_adc ADC5_XO_THERM_100K_PU>;
543 qcom,ratiometric;
544 qcom,hw-settle-time-us = <200>;
545 };
546
547 skin-therm@1 {
548 reg = <1>;
549 io-channels = <&pm8150_adc ADC5_AMUX_THM1_100K_PU>;
550 qcom,ratiometric;
551 qcom,hw-settle-time-us = <200>;
552 };
553
554 pa-therm1@2 {
555 reg = <2>;
556 io-channels = <&pm8150_adc ADC5_AMUX_THM2_100K_PU>;
557 qcom,ratiometric;
558 qcom,hw-settle-time-us = <200>;
559 };
560};
561
562&pm8150b_adc {
563 channel@4f {
564 reg = <ADC5_AMUX_THM3_100K_PU>;
565 qcom,ratiometric;
566 qcom,hw-settle-time = <200>;
567 label = "conn_therm";
568 };
569};
570
571&pm8150b_adc_tm {
572 status = "okay";
573
574 conn-therm@0 {
575 reg = <0>;
576 io-channels = <&pm8150b_adc ADC5_AMUX_THM3_100K_PU>;
577 qcom,ratiometric;
578 qcom,hw-settle-time-us = <200>;
579 };
580};
581
582&pm8150l_adc_tm {
583 status = "okay";
584
585 camera-flash-therm@0 {
586 reg = <0>;
587 io-channels = <&pm8150l_adc ADC5_AMUX_THM1_100K_PU>;
588 qcom,ratiometric;
589 qcom,hw-settle-time-us = <200>;
590 };
591
592 skin-msm-therm@1 {
593 reg = <1>;
594 io-channels = <&pm8150l_adc ADC5_AMUX_THM2_100K_PU>;
595 qcom,ratiometric;
596 qcom,hw-settle-time-us = <200>;
597 };
598
599 pa-therm2@2 {
600 reg = <2>;
601 io-channels = <&pm8150l_adc ADC5_AMUX_THM3_100K_PU>;
602 qcom,ratiometric;
603 qcom,hw-settle-time-us = <200>;
604 };
605};
606
607&pm8150l_adc {
608 channel@4d {
609 reg = <ADC5_AMUX_THM1_100K_PU>;
610 qcom,ratiometric;
611 qcom,hw-settle-time = <200>;
612 label = "camera_flash_therm";
613 };
614
615 channel@4e {
616 reg = <ADC5_AMUX_THM2_100K_PU>;
617 qcom,ratiometric;
618 qcom,hw-settle-time = <200>;
619 label = "skin_msm_therm";
620 };
621
622 channel@4f {
623 reg = <ADC5_AMUX_THM3_100K_PU>;
624 qcom,ratiometric;
625 qcom,hw-settle-time = <200>;
626 label = "pa_therm2";
627 };
628};
629
630&qupv3_id_0 {
631 status = "okay";
632};
633
634&qupv3_id_1 {
635 status = "okay";
636};
637
638&qupv3_id_2 {
639 status = "okay";
640};
641
642&rxmacro {
643 status = "okay";
644};
645
646&slpi {
647 status = "okay";
648 firmware-name = "qcom/sm8250/slpi.mbn";
649};
650
651&sound {
652 compatible = "qcom,sm8250-sndcard";
653 model = "SM8250-MTP-WCD9380-WSA8810-VA-DMIC";
654 audio-routing =
655 "SpkrLeft IN", "WSA_SPK1 OUT",
656 "SpkrRight IN", "WSA_SPK2 OUT",
657 "IN1_HPHL", "HPHL_OUT",
658 "IN2_HPHR", "HPHR_OUT",
659 "AMIC1", "MIC BIAS1",
660 "AMIC2", "MIC BIAS2",
661 "AMIC3", "MIC BIAS3",
662 "AMIC4", "MIC BIAS3",
663 "AMIC5", "MIC BIAS4",
664 "TX SWR_ADC0", "ADC1_OUTPUT",
665 "TX SWR_ADC1", "ADC2_OUTPUT",
666 "TX SWR_ADC2", "ADC3_OUTPUT",
667 "TX SWR_ADC3", "ADC4_OUTPUT",
668 "TX SWR_DMIC0", "DMIC1_OUTPUT",
669 "TX SWR_DMIC1", "DMIC2_OUTPUT",
670 "TX SWR_DMIC2", "DMIC3_OUTPUT",
671 "TX SWR_DMIC3", "DMIC4_OUTPUT",
672 "TX SWR_DMIC4", "DMIC5_OUTPUT",
673 "TX SWR_DMIC5", "DMIC6_OUTPUT",
674 "TX SWR_DMIC6", "DMIC7_OUTPUT",
675 "TX SWR_DMIC7", "DMIC8_OUTPUT";
676
677 mm1-dai-link {
678 link-name = "MultiMedia1";
679 cpu {
680 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
681 };
682 };
683
684 mm2-dai-link {
685 link-name = "MultiMedia2";
686 cpu {
687 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
688 };
689 };
690
691 mm3-dai-link {
692 link-name = "MultiMedia3";
693 cpu {
694 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
695 };
696 };
697
698 wcd-playback-dai-link {
699 link-name = "WCD Playback";
700 cpu {
701 sound-dai = <&q6afedai RX_CODEC_DMA_RX_0>;
702 };
703 codec {
704 sound-dai = <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>;
705 };
706 platform {
707 sound-dai = <&q6routing>;
708 };
709 };
710
711 wcd-capture-dai-link {
712 link-name = "WCD Capture";
713 cpu {
714 sound-dai = <&q6afedai TX_CODEC_DMA_TX_3>;
715 };
716
717 codec {
718 sound-dai = <&wcd938x 1>, <&swr2 0>, <&txmacro 0>;
719 };
720 platform {
721 sound-dai = <&q6routing>;
722 };
723 };
724
725 wsa-dai-link {
726 link-name = "WSA Playback";
727 cpu {
728 sound-dai = <&q6afedai WSA_CODEC_DMA_RX_0>;
729 };
730
731 codec {
732 sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&wsamacro 0>;
733 };
734 platform {
735 sound-dai = <&q6routing>;
736 };
737 };
738
739 va-dai-link {
740 link-name = "VA Capture";
741 cpu {
742 sound-dai = <&q6afedai VA_CODEC_DMA_TX_0>;
743 };
744
745 platform {
746 sound-dai = <&q6routing>;
747 };
748
749 codec {
750 sound-dai = <&vamacro 0>;
751 };
752 };
753};
754
755&swr0 {
756 status = "okay";
757
758 left_spkr: speaker@0,3 {
759 compatible = "sdw10217211000";
760 reg = <0 3>;
761 powerdown-gpios = <&tlmm 26 GPIO_ACTIVE_LOW>;
762 #thermal-sensor-cells = <0>;
763 sound-name-prefix = "SpkrLeft";
764 #sound-dai-cells = <0>;
765 };
766
767 right_spkr: speaker@0,4 {
768 compatible = "sdw10217211000";
769 reg = <0 4>;
770 powerdown-gpios = <&tlmm 127 GPIO_ACTIVE_LOW>;
771 #thermal-sensor-cells = <0>;
772 sound-name-prefix = "SpkrRight";
773 #sound-dai-cells = <0>;
774 };
775};
776
777&swr1 {
778 status = "okay";
779
780 wcd_rx: wcd9380-rx@0,4 {
781 compatible = "sdw20217010d00";
782 reg = <0 4>;
783 qcom,rx-port-mapping = <1 2 3 4 5>;
784 };
785};
786
787&swr2 {
788 status = "okay";
789
790 wcd_tx: wcd9380-tx@0,3 {
791 compatible = "sdw20217010d00";
792 reg = <0 3>;
793 qcom,tx-port-mapping = <2 3 4 5>;
794 };
795};
796
797&tlmm {
798 gpio-reserved-ranges = <28 4>, <40 4>;
799
800 wcd938x_reset_default: wcd938x-reset-default-state {
801 pins = "gpio32";
802 function = "gpio";
803 drive-strength = <16>;
804 output-high;
805 };
806
807 wcd938x_reset_sleep: wcd938x-reset-sleep-state {
808 pins = "gpio32";
809 function = "gpio";
810 drive-strength = <16>;
811 bias-disable;
812 output-low;
813 };
814};
815
816&txmacro {
817 status = "okay";
818};
819
820&uart12 {
821 status = "okay";
822};
823
824&ufs_mem_hc {
825 status = "okay";
826
827 vcc-supply = <&vreg_l17a_3p0>;
828 vcc-max-microamp = <750000>;
829 vccq-supply = <&vreg_l6a_1p2>;
830 vccq-max-microamp = <700000>;
831 vccq2-supply = <&vreg_s4a_1p8>;
832 vccq2-max-microamp = <750000>;
833};
834
835&ufs_mem_phy {
836 status = "okay";
837
838 vdda-phy-supply = <&vreg_l5a_0p875>;
839 vdda-pll-supply = <&vreg_l9a_1p2>;
840};
841
842&usb_1 {
843 status = "okay";
844};
845
846&usb_1_dwc3 {
847 dr_mode = "host";
848};
849
850&usb_1_hsphy {
851 status = "okay";
852
853 vdda-pll-supply = <&vreg_l5a_0p875>;
854 vdda18-supply = <&vreg_l12a_1p8>;
855 vdda33-supply = <&vreg_l2a_3p1>;
856};
857
858&usb_1_qmpphy {
859 status = "okay";
860
861 vdda-phy-supply = <&vreg_l9a_1p2>;
862 vdda-pll-supply = <&vreg_l18a_0p9>;
863};
864
865&usb_2 {
866 status = "okay";
867};
868
869&usb_2_dwc3 {
870 dr_mode = "host";
871};
872
873&usb_2_hsphy {
874 status = "okay";
875
876 vdda-pll-supply = <&vreg_l5a_0p875>;
877 vdda18-supply = <&vreg_l12a_1p8>;
878 vdda33-supply = <&vreg_l2a_3p1>;
879};
880
881&usb_2_qmpphy {
882 status = "okay";
883
884 vdda-phy-supply = <&vreg_l9a_1p2>;
885 vdda-pll-supply = <&vreg_l18a_0p9>;
886};
887
888&venus {
889 status = "okay";
890};
891
892&wsamacro {
893 status = "okay";
894};