Merge tag 'usb-6.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / qcom / sm8550-mtp.dts
1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3  * Copyright (c) 2022, Linaro Limited
4  */
5
6 /dts-v1/;
7
8 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
9 #include "sm8550.dtsi"
10 #include "pm8010.dtsi"
11 #include "pm8550.dtsi"
12 #include "pm8550b.dtsi"
13 #include "pm8550ve.dtsi"
14 #include "pm8550vs.dtsi"
15 #include "pmk8550.dtsi"
16 #include "pmr735d_a.dtsi"
17 #include "pmr735d_b.dtsi"
18
19 / {
20         model = "Qualcomm Technologies, Inc. SM8550 MTP";
21         compatible = "qcom,sm8550-mtp", "qcom,sm8550";
22         chassis-type = "handset";
23
24         aliases {
25                 serial0 = &uart7;
26         };
27
28         wcd938x: audio-codec {
29                 compatible = "qcom,wcd9385-codec";
30
31                 pinctrl-names = "default";
32                 pinctrl-0 = <&wcd_default>;
33
34                 qcom,micbias1-microvolt = <1800000>;
35                 qcom,micbias2-microvolt = <1800000>;
36                 qcom,micbias3-microvolt = <1800000>;
37                 qcom,micbias4-microvolt = <1800000>;
38                 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
39                 qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
40                 qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
41                 qcom,rx-device = <&wcd_rx>;
42                 qcom,tx-device = <&wcd_tx>;
43
44                 reset-gpios = <&tlmm 108 GPIO_ACTIVE_LOW>;
45
46                 vdd-buck-supply = <&vreg_l15b_1p8>;
47                 vdd-rxtx-supply = <&vreg_l15b_1p8>;
48                 vdd-io-supply = <&vreg_l15b_1p8>;
49                 vdd-mic-bias-supply = <&vreg_bob1>;
50
51                 #sound-dai-cells = <1>;
52         };
53
54         chosen {
55                 stdout-path = "serial0:115200n8";
56         };
57
58         pmic-glink {
59                 compatible = "qcom,sm8550-pmic-glink", "qcom,pmic-glink";
60                 #address-cells = <1>;
61                 #size-cells = <0>;
62                 orientation-gpios = <&tlmm 11 GPIO_ACTIVE_HIGH>;
63
64                 connector@0 {
65                         compatible = "usb-c-connector";
66                         reg = <0>;
67                         power-role = "dual";
68                         data-role = "dual";
69
70                         ports {
71                                 #address-cells = <1>;
72                                 #size-cells = <0>;
73
74                                 port@0 {
75                                         reg = <0>;
76
77                                         pmic_glink_hs_in: endpoint {
78                                                 remote-endpoint = <&usb_1_dwc3_hs>;
79                                         };
80                                 };
81
82                                 port@1 {
83                                         reg = <1>;
84
85                                         pmic_glink_ss_in: endpoint {
86                                                 remote-endpoint = <&usb_dp_qmpphy_out>;
87                                         };
88                                 };
89
90                                 port@2 {
91                                         reg = <2>;
92
93                                         pmic_glink_sbu: endpoint {
94                                                 remote-endpoint = <&fsa4480_sbu_mux>;
95                                         };
96                                 };
97                         };
98                 };
99         };
100
101         sound {
102                 compatible = "qcom,sm8550-sndcard", "qcom,sm8450-sndcard";
103                 model = "SM8550-MTP";
104                 audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
105                                 "SpkrRight IN", "WSA_SPK2 OUT",
106                                 "IN1_HPHL", "HPHL_OUT",
107                                 "IN2_HPHR", "HPHR_OUT",
108                                 "AMIC2", "MIC BIAS2",
109                                 "VA DMIC0", "MIC BIAS1",
110                                 "VA DMIC1", "MIC BIAS1",
111                                 "VA DMIC2", "MIC BIAS3",
112                                 "TX DMIC0", "MIC BIAS1",
113                                 "TX DMIC1", "MIC BIAS2",
114                                 "TX DMIC2", "MIC BIAS3",
115                                 "TX SWR_ADC1", "ADC2_OUTPUT";
116
117                 wcd-playback-dai-link {
118                         link-name = "WCD Playback";
119
120                         cpu {
121                                 sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
122                         };
123
124                         codec {
125                                 sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>;
126                         };
127
128                         platform {
129                                 sound-dai = <&q6apm>;
130                         };
131                 };
132
133                 wcd-capture-dai-link {
134                         link-name = "WCD Capture";
135
136                         cpu {
137                                 sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
138                         };
139
140                         codec {
141                                 sound-dai = <&wcd938x 1>, <&swr2 0>, <&lpass_txmacro 0>;
142                         };
143
144                         platform {
145                                 sound-dai = <&q6apm>;
146                         };
147                 };
148
149                 wsa-dai-link {
150                         link-name = "WSA Playback";
151
152                         cpu {
153                                 sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
154                         };
155
156                         codec {
157                                 sound-dai = <&left_spkr>, <&right_spkr>, <&swr0 0>, <&lpass_wsamacro 0>;
158                         };
159
160                         platform {
161                                 sound-dai = <&q6apm>;
162                         };
163                 };
164
165                 va-dai-link {
166                         link-name = "VA Capture";
167
168                         cpu {
169                                 sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
170                         };
171
172                         codec {
173                                 sound-dai = <&lpass_vamacro 0>;
174                         };
175
176                         platform {
177                                 sound-dai = <&q6apm>;
178                         };
179                 };
180         };
181
182         vph_pwr: vph-pwr-regulator {
183                 compatible = "regulator-fixed";
184                 regulator-name = "vph_pwr";
185                 regulator-min-microvolt = <3700000>;
186                 regulator-max-microvolt = <3700000>;
187
188                 regulator-always-on;
189                 regulator-boot-on;
190         };
191 };
192
193 &apps_rsc {
194         regulators-0 {
195                 compatible = "qcom,pm8550-rpmh-regulators";
196                 qcom,pmic-id = "b";
197
198                 vdd-bob1-supply = <&vph_pwr>;
199                 vdd-bob2-supply = <&vph_pwr>;
200                 vdd-l1-l4-l10-supply = <&vreg_s6g_1p8>;
201                 vdd-l2-l13-l14-supply = <&vreg_bob1>;
202                 vdd-l3-supply = <&vreg_s4g_1p3>;
203                 vdd-l5-l16-supply = <&vreg_bob1>;
204                 vdd-l6-l7-supply = <&vreg_bob1>;
205                 vdd-l8-l9-supply = <&vreg_bob1>;
206                 vdd-l11-supply = <&vreg_s4g_1p3>;
207                 vdd-l12-supply = <&vreg_s6g_1p8>;
208                 vdd-l15-supply = <&vreg_s6g_1p8>;
209                 vdd-l17-supply = <&vreg_bob2>;
210
211                 vreg_bob1: bob1 {
212                         regulator-name = "vreg_bob1";
213                         regulator-min-microvolt = <3296000>;
214                         regulator-max-microvolt = <3960000>;
215                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
216                 };
217
218                 vreg_bob2: bob2 {
219                         regulator-name = "vreg_bob2";
220                         regulator-min-microvolt = <2720000>;
221                         regulator-max-microvolt = <3960000>;
222                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
223                 };
224
225                 vreg_l1b_1p8: ldo1 {
226                         regulator-name = "vreg_l1b_1p8";
227                         regulator-min-microvolt = <1800000>;
228                         regulator-max-microvolt = <1800000>;
229                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
230                 };
231
232                 vreg_l2b_3p0: ldo2 {
233                         regulator-name = "vreg_l2b_3p0";
234                         regulator-min-microvolt = <3008000>;
235                         regulator-max-microvolt = <3008000>;
236                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
237                 };
238
239                 vreg_l5b_3p1: ldo5 {
240                         regulator-name = "vreg_l5b_3p1";
241                         regulator-min-microvolt = <3104000>;
242                         regulator-max-microvolt = <3104000>;
243                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
244                 };
245
246                 vreg_l6b_1p8: ldo6 {
247                         regulator-name = "vreg_l6b_1p8";
248                         regulator-min-microvolt = <1800000>;
249                         regulator-max-microvolt = <3008000>;
250                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
251                 };
252
253                 vreg_l7b_1p8: ldo7 {
254                         regulator-name = "vreg_l7b_1p8";
255                         regulator-min-microvolt = <1800000>;
256                         regulator-max-microvolt = <3008000>;
257                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
258                 };
259
260                 vreg_l8b_1p8: ldo8 {
261                         regulator-name = "vreg_l8b_1p8";
262                         regulator-min-microvolt = <1800000>;
263                         regulator-max-microvolt = <3008000>;
264                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
265                 };
266
267                 vreg_l9b_2p9: ldo9 {
268                         regulator-name = "vreg_l9b_2p9";
269                         regulator-min-microvolt = <2960000>;
270                         regulator-max-microvolt = <3008000>;
271                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
272                 };
273
274                 vreg_l11b_1p2: ldo11 {
275                         regulator-name = "vreg_l11b_1p2";
276                         regulator-min-microvolt = <1200000>;
277                         regulator-max-microvolt = <1504000>;
278                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
279                 };
280
281                 vreg_l12b_1p8: ldo12 {
282                         regulator-name = "vreg_l12b_1p8";
283                         regulator-min-microvolt = <1800000>;
284                         regulator-max-microvolt = <1800000>;
285                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
286                 };
287
288                 vreg_l13b_3p0: ldo13 {
289                         regulator-name = "vreg_l13b_3p0";
290                         regulator-min-microvolt = <3000000>;
291                         regulator-max-microvolt = <3000000>;
292                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
293                 };
294
295                 vreg_l14b_3p2: ldo14 {
296                         regulator-name = "vreg_l14b_3p2";
297                         regulator-min-microvolt = <3200000>;
298                         regulator-max-microvolt = <3200000>;
299                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
300                 };
301
302                 vreg_l15b_1p8: ldo15 {
303                         regulator-name = "vreg_l15b_1p8";
304                         regulator-min-microvolt = <1800000>;
305                         regulator-max-microvolt = <1800000>;
306                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
307                 };
308
309                 vreg_l16b_2p8: ldo16 {
310                         regulator-name = "vreg_l16b_2p8";
311                         regulator-min-microvolt = <2800000>;
312                         regulator-max-microvolt = <2800000>;
313                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
314                 };
315
316                 vreg_l17b_2p5: ldo17 {
317                         regulator-name = "vreg_l17b_2p5";
318                         regulator-min-microvolt = <2504000>;
319                         regulator-max-microvolt = <2504000>;
320                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
321                 };
322         };
323
324         regulators-1 {
325                 compatible = "qcom,pm8550vs-rpmh-regulators";
326                 qcom,pmic-id = "c";
327
328                 vdd-l3-supply = <&vreg_s4e_0p9>;
329
330                 vreg_l3c_0p91: ldo3 {
331                         regulator-name = "vreg_l3c_0p9";
332                         regulator-min-microvolt = <880000>;
333                         regulator-max-microvolt = <912000>;
334                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
335                 };
336         };
337
338         regulators-2 {
339                 compatible = "qcom,pm8550vs-rpmh-regulators";
340                 qcom,pmic-id = "d";
341
342                 vdd-l1-supply = <&vreg_s4e_0p9>;
343
344                 vreg_l1d_0p88: ldo1 {
345                         regulator-name = "vreg_l1d_0p88";
346                         regulator-min-microvolt = <880000>;
347                         regulator-max-microvolt = <920000>;
348                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
349                 };
350         };
351
352         regulators-3 {
353                 compatible = "qcom,pm8550vs-rpmh-regulators";
354                 qcom,pmic-id = "e";
355
356                 vdd-l1-supply = <&vreg_s4e_0p9>;
357                 vdd-l2-supply = <&vreg_s4e_0p9>;
358                 vdd-l3-supply = <&vreg_s4g_1p3>;
359                 vdd-s4-supply = <&vph_pwr>;
360                 vdd-s5-supply = <&vph_pwr>;
361
362                 vreg_s4e_0p9: smps4 {
363                         regulator-name = "vreg_s4e_0p9";
364                         regulator-min-microvolt = <904000>;
365                         regulator-max-microvolt = <984000>;
366                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
367                 };
368
369                 vreg_s5e_1p1: smps5 {
370                         regulator-name = "vreg_s5e_1p1";
371                         regulator-min-microvolt = <1080000>;
372                         regulator-max-microvolt = <1120000>;
373                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
374                 };
375
376                 vreg_l1e_0p88: ldo1 {
377                         regulator-name = "vreg_l1e_0p88";
378                         regulator-min-microvolt = <880000>;
379                         regulator-max-microvolt = <880000>;
380                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
381                 };
382
383                 vreg_l2e_0p9: ldo2 {
384                         regulator-name = "vreg_l2e_0p9";
385                         regulator-min-microvolt = <904000>;
386                         regulator-max-microvolt = <970000>;
387                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
388                 };
389
390                 vreg_l3e_1p2: ldo3 {
391                         regulator-name = "vreg_l3e_1p2";
392                         regulator-min-microvolt = <1200000>;
393                         regulator-max-microvolt = <1200000>;
394                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
395                 };
396         };
397
398         regulators-4 {
399                 compatible = "qcom,pm8550ve-rpmh-regulators";
400                 qcom,pmic-id = "f";
401
402                 vdd-l1-supply = <&vreg_s4e_0p9>;
403                 vdd-l2-supply = <&vreg_s4e_0p9>;
404                 vdd-l3-supply = <&vreg_s4e_0p9>;
405                 vdd-s4-supply = <&vph_pwr>;
406
407                 vreg_s4f_0p5: smps4 {
408                         regulator-name = "vreg_s4f_0p5";
409                         regulator-min-microvolt = <500000>;
410                         regulator-max-microvolt = <700000>;
411                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
412                 };
413
414                 vreg_l1f_0p9: ldo1 {
415                         regulator-name = "vreg_l1f_0p9";
416                         regulator-min-microvolt = <912000>;
417                         regulator-max-microvolt = <912000>;
418                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
419                 };
420
421                 vreg_l2f_0p88: ldo2 {
422                         regulator-name = "vreg_l2f_0p88";
423                         regulator-min-microvolt = <880000>;
424                         regulator-max-microvolt = <912000>;
425                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
426                 };
427
428                 vreg_l3f_0p91: ldo3 {
429                         regulator-name = "vreg_l3f_0p91";
430                         regulator-min-microvolt = <880000>;
431                         regulator-max-microvolt = <912000>;
432                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
433                 };
434         };
435
436         regulators-5 {
437                 compatible = "qcom,pm8550vs-rpmh-regulators";
438                 qcom,pmic-id = "g";
439
440                 vdd-l1-supply = <&vreg_s4g_1p3>;
441                 vdd-l2-supply = <&vreg_s4g_1p3>;
442                 vdd-l3-supply = <&vreg_s4g_1p3>;
443                 vdd-s1-supply = <&vph_pwr>;
444                 vdd-s2-supply = <&vph_pwr>;
445                 vdd-s3-supply = <&vph_pwr>;
446                 vdd-s4-supply = <&vph_pwr>;
447                 vdd-s5-supply = <&vph_pwr>;
448                 vdd-s6-supply = <&vph_pwr>;
449
450                 vreg_s1g_1p2: smps1 {
451                         regulator-name = "vreg_s1g_1p2";
452                         regulator-min-microvolt = <1200000>;
453                         regulator-max-microvolt = <1300000>;
454                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
455                 };
456
457                 vreg_s2g_0p8: smps2 {
458                         regulator-name = "vreg_s2g_0p8";
459                         regulator-min-microvolt = <800000>;
460                         regulator-max-microvolt = <1000000>;
461                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
462                 };
463
464                 vreg_s3g_0p7: smps3 {
465                         regulator-name = "vreg_s3g_0p7";
466                         regulator-min-microvolt = <300000>;
467                         regulator-max-microvolt = <1004000>;
468                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
469                 };
470
471                 vreg_s4g_1p3: smps4 {
472                         regulator-name = "vreg_s4g_1p3";
473                         regulator-min-microvolt = <1200000>;
474                         regulator-max-microvolt = <1352000>;
475                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
476                 };
477
478                 vreg_s5g_0p8: smps5 {
479                         regulator-name = "vreg_s5g_0p8";
480                         regulator-min-microvolt = <500000>;
481                         regulator-max-microvolt = <1004000>;
482                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
483                 };
484
485                 vreg_s6g_1p8: smps6 {
486                         regulator-name = "vreg_s6g_1p8";
487                         regulator-min-microvolt = <1800000>;
488                         regulator-max-microvolt = <2000000>;
489                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
490                 };
491
492                 vreg_l1g_1p2: ldo1 {
493                         regulator-name = "vreg_l1g_1p2";
494                         regulator-min-microvolt = <1200000>;
495                         regulator-max-microvolt = <1200000>;
496                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
497                 };
498
499                 vreg_l2g_1p2: ldo2 {
500                         regulator-name = "vreg_l2g_1p2";
501                         regulator-min-microvolt = <1200000>;
502                         regulator-max-microvolt = <1200000>;
503                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
504                 };
505
506                 vreg_l3g_1p2: ldo3 {
507                         regulator-name = "vreg_l3g_1p2";
508                         regulator-min-microvolt = <1200000>;
509                         regulator-max-microvolt = <1200000>;
510                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
511                 };
512         };
513 };
514
515 &i2c_master_hub_0 {
516         status = "okay";
517 };
518
519 &i2c_hub_2 {
520         status = "okay";
521
522         typec-mux@42 {
523                 compatible = "fcs,fsa4480";
524                 reg = <0x42>;
525
526                 vcc-supply = <&vreg_bob1>;
527
528                 mode-switch;
529                 orientation-switch;
530
531                 port {
532                         fsa4480_sbu_mux: endpoint {
533                                 remote-endpoint = <&pmic_glink_sbu>;
534                         };
535                 };
536         };
537 };
538
539 &lpass_tlmm {
540         spkr_1_sd_n_active: spkr-1-sd-n-active-state {
541                 pins = "gpio17";
542                 function = "gpio";
543                 drive-strength = <16>;
544                 bias-disable;
545                 output-low;
546         };
547
548         spkr_2_sd_n_active: spkr-2-sd-n-active-state {
549                 pins = "gpio18";
550                 function = "gpio";
551                 drive-strength = <16>;
552                 bias-disable;
553                 output-low;
554         };
555 };
556
557 &mdss {
558         status = "okay";
559 };
560
561 &mdss_dsi0 {
562         vdda-supply = <&vreg_l3e_1p2>;
563         status = "okay";
564
565         panel@0 {
566                 compatible = "visionox,vtdr6130";
567                 reg = <0>;
568
569                 pinctrl-names = "default", "sleep";
570                 pinctrl-0 = <&sde_dsi_active>, <&sde_te_active>;
571                 pinctrl-1 = <&sde_dsi_suspend>, <&sde_te_suspend>;
572
573                 vddio-supply = <&vreg_l12b_1p8>;
574                 vci-supply = <&vreg_l13b_3p0>;
575                 vdd-supply = <&vreg_l11b_1p2>;
576
577                 reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
578
579                 port {
580                         panel0_in: endpoint {
581                                 remote-endpoint = <&mdss_dsi0_out>;
582                         };
583                 };
584         };
585 };
586
587 &mdss_dsi0_out {
588         remote-endpoint = <&panel0_in>;
589         data-lanes = <0 1 2 3>;
590 };
591
592 &mdss_dsi0_phy {
593         vdds-supply = <&vreg_l1e_0p88>;
594         status = "okay";
595 };
596
597 &mdss_dp0 {
598         status = "okay";
599 };
600
601 &mdss_dp0_out {
602         data-lanes = <0 1>;
603         remote-endpoint = <&usb_dp_qmpphy_dp_in>;
604 };
605
606 &pcie_1_phy_aux_clk {
607         clock-frequency = <1000>;
608 };
609
610 &pcie0 {
611         wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
612         perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
613
614         pinctrl-names = "default";
615         pinctrl-0 = <&pcie0_default_state>;
616
617         status = "okay";
618 };
619
620 &pcie0_phy {
621         vdda-phy-supply = <&vreg_l1e_0p88>;
622         vdda-pll-supply = <&vreg_l3e_1p2>;
623
624         status = "okay";
625 };
626
627 &pcie1 {
628         wake-gpios = <&tlmm 99 GPIO_ACTIVE_HIGH>;
629         perst-gpios = <&tlmm 97 GPIO_ACTIVE_LOW>;
630
631         pinctrl-names = "default";
632         pinctrl-0 = <&pcie1_default_state>;
633
634         status = "okay";
635 };
636
637 &pcie1_phy {
638         vdda-phy-supply = <&vreg_l3c_0p91>;
639         vdda-pll-supply = <&vreg_l3e_1p2>;
640         vdda-qref-supply = <&vreg_l1e_0p88>;
641
642         status = "okay";
643 };
644
645 &pm8550_gpios {
646         sdc2_card_det_n: sdc2-card-det-state {
647                 pins = "gpio12";
648                 function = "normal";
649                 input-enable;
650                 output-disable;
651                 bias-pull-up;
652                 power-source = <1>; /* 1.8 V */
653         };
654 };
655
656 &pm8550b_eusb2_repeater {
657         vdd18-supply = <&vreg_l15b_1p8>;
658         vdd3-supply = <&vreg_l5b_3p1>;
659 };
660
661 &qupv3_id_0 {
662         status = "okay";
663 };
664
665 &remoteproc_adsp {
666         firmware-name = "qcom/sm8550/adsp.mbn",
667                         "qcom/sm8550/adsp_dtb.mbn";
668         status = "okay";
669 };
670
671 &remoteproc_cdsp {
672         firmware-name = "qcom/sm8550/cdsp.mbn",
673                         "qcom/sm8550/cdsp_dtb.mbn";
674         status = "okay";
675 };
676
677 &remoteproc_mpss {
678         firmware-name = "qcom/sm8550/modem.mbn",
679                         "qcom/sm8550/modem_dtb.mbn";
680         status = "okay";
681 };
682
683 &sdhc_2 {
684         cd-gpios = <&pm8550_gpios 12 GPIO_ACTIVE_LOW>;
685         pinctrl-names = "default", "sleep";
686         pinctrl-0 = <&sdc2_default &sdc2_card_det_n>;
687         pinctrl-1 = <&sdc2_sleep &sdc2_card_det_n>;
688         vmmc-supply = <&vreg_l9b_2p9>;
689         vqmmc-supply = <&vreg_l8b_1p8>;
690         bus-width = <4>;
691         no-sdio;
692         no-mmc;
693         status = "okay";
694 };
695
696 &sleep_clk {
697         clock-frequency = <32000>;
698 };
699
700 &swr0 {
701         status = "okay";
702
703         /* WSA8845 */
704         left_spkr: speaker@0,0 {
705                 compatible = "sdw20217020400";
706                 reg = <0 0>;
707                 pinctrl-names = "default";
708                 pinctrl-0 = <&spkr_1_sd_n_active>;
709                 powerdown-gpios = <&lpass_tlmm 17 GPIO_ACTIVE_LOW>;
710                 #sound-dai-cells = <0>;
711                 sound-name-prefix = "SpkrLeft";
712                 vdd-1p8-supply = <&vreg_l15b_1p8>;
713                 vdd-io-supply = <&vreg_l3g_1p2>;
714         };
715
716         /* WSA8845 */
717         right_spkr: speaker@0,1 {
718                 compatible = "sdw20217020400";
719                 reg = <0 1>;
720                 pinctrl-names = "default";
721                 pinctrl-0 = <&spkr_2_sd_n_active>;
722                 powerdown-gpios = <&lpass_tlmm 18 GPIO_ACTIVE_LOW>;
723                 #sound-dai-cells = <0>;
724                 sound-name-prefix = "SpkrRight";
725                 vdd-1p8-supply = <&vreg_l15b_1p8>;
726                 vdd-io-supply = <&vreg_l3g_1p2>;
727         };
728 };
729
730 &swr1 {
731         status = "okay";
732
733         /* WCD9385 RX */
734         wcd_rx: codec@0,4 {
735                 compatible = "sdw20217010d00";
736                 reg = <0 4>;
737                 qcom,rx-port-mapping = <1 2 3 4 5>;
738         };
739 };
740
741 &swr2 {
742         status = "okay";
743
744         /* WCD9385 TX */
745         wcd_tx: codec@0,3 {
746                 compatible = "sdw20217010d00";
747                 reg = <0 3>;
748                 qcom,tx-port-mapping = <1 1 2 3>;
749         };
750 };
751
752 &tlmm {
753         gpio-reserved-ranges = <32 8>;
754
755         sde_dsi_active: sde-dsi-active-state {
756                 pins = "gpio133";
757                 function = "gpio";
758                 drive-strength = <8>;
759                 bias-disable;
760         };
761
762         sde_dsi_suspend: sde-dsi-suspend-state {
763                 pins = "gpio133";
764                 function = "gpio";
765                 drive-strength = <2>;
766                 bias-pull-down;
767         };
768
769         sde_te_active: sde-te-active-state {
770                 pins = "gpio86";
771                 function = "mdp_vsync";
772                 drive-strength = <2>;
773                 bias-pull-down;
774         };
775
776         sde_te_suspend: sde-te-suspend-state {
777                 pins = "gpio86";
778                 function = "mdp_vsync";
779                 drive-strength = <2>;
780                 bias-pull-down;
781         };
782
783         wcd_default: wcd-reset-n-active-state {
784                 pins = "gpio108";
785                 function = "gpio";
786                 drive-strength = <16>;
787                 bias-disable;
788                 output-low;
789         };
790 };
791
792 &uart7 {
793         status = "okay";
794 };
795
796 &ufs_mem_hc {
797         reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
798         vcc-supply = <&vreg_l17b_2p5>;
799         vcc-max-microamp = <1300000>;
800         vccq-supply = <&vreg_l1g_1p2>;
801         vccq-max-microamp = <1200000>;
802         vdd-hba-supply = <&vreg_l3g_1p2>;
803
804         status = "okay";
805 };
806
807 &ufs_mem_phy {
808         vdda-phy-supply = <&vreg_l1d_0p88>;
809         vdda-pll-supply = <&vreg_l3e_1p2>;
810
811         status = "okay";
812 };
813
814 &usb_1 {
815         status = "okay";
816 };
817
818 &usb_1_dwc3 {
819         dr_mode = "otg";
820         usb-role-switch;
821 };
822
823 &usb_1_dwc3_hs {
824         remote-endpoint = <&pmic_glink_hs_in>;
825 };
826
827 &usb_1_dwc3_ss {
828         remote-endpoint = <&usb_dp_qmpphy_usb_ss_in>;
829 };
830
831 &usb_1_hsphy {
832         vdd-supply = <&vreg_l1e_0p88>;
833         vdda12-supply = <&vreg_l3e_1p2>;
834
835         phys = <&pm8550b_eusb2_repeater>;
836
837         status = "okay";
838 };
839
840 &usb_dp_qmpphy {
841         vdda-phy-supply = <&vreg_l3e_1p2>;
842         vdda-pll-supply = <&vreg_l3f_0p91>;
843
844         orientation-switch;
845
846         status = "okay";
847 };
848
849 &usb_dp_qmpphy_dp_in {
850         remote-endpoint = <&mdss_dp0_out>;
851 };
852
853 &usb_dp_qmpphy_out {
854         remote-endpoint = <&pmic_glink_ss_in>;
855 };
856
857 &usb_dp_qmpphy_usb_ss_in {
858         remote-endpoint = <&usb_1_dwc3_ss>;
859 };
860
861 &xo_board {
862         clock-frequency = <76800000>;
863 };