GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / arm64 / boot / dts / qcom / sm8250-sony-xperia-edo.dtsi
1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3  * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
4  */
5
6 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
7 #include "sm8250.dtsi"
8 #include "pm8150.dtsi"
9 #include "pm8150b.dtsi"
10 #include "pm8150l.dtsi"
11 #include "pm8009.dtsi"
12
13 /delete-node/ &adsp_mem;
14 /delete-node/ &spss_mem;
15 /delete-node/ &cdsp_secure_heap;
16
17 / {
18         qcom,msm-id = <356 0x20001>; /* SM8250 v2.1 */
19         qcom,board-id = <0x10008 0>;
20
21         chosen {
22                 #address-cells = <2>;
23                 #size-cells = <2>;
24                 ranges;
25
26                 framebuffer: framebuffer@9c000000 {
27                         compatible = "simple-framebuffer";
28                         reg = <0 0x9c000000 0 0x2300000>;
29                         /* pdx203 BL initializes in 2.5k mode, not 4k */
30                         width = <1096>;
31                         height = <2560>;
32                         stride = <(1096 * 4)>;
33                         format = "a8r8g8b8";
34                         /*
35                          * That's a lot of clocks, but it's necessary due
36                          * to unused clk cleanup & no panel driver yet..
37                          */
38                         clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
39                                  <&gcc GCC_DISP_HF_AXI_CLK>,
40                                  <&gcc GCC_DISP_SF_AXI_CLK>,
41                                  <&dispcc DISP_CC_MDSS_VSYNC_CLK>,
42                                  <&dispcc DISP_CC_MDSS_MDP_CLK>,
43                                  <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
44                                  <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
45                                  <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
46                                  <&dispcc DISP_CC_MDSS_ESC0_CLK>;
47                         power-domains = <&dispcc MDSS_GDSC>;
48                 };
49         };
50
51         gpio_keys: gpio-keys {
52                 compatible = "gpio-keys";
53
54                 pinctrl-0 = <&focus_n &snapshot_n &vol_down_n>;
55                 pinctrl-names = "default";
56
57                 key-camera-focus {
58                         label = "Camera Focus";
59                         linux,code = <KEY_CAMERA_FOCUS>;
60                         gpios = <&pm8150b_gpios 2 GPIO_ACTIVE_LOW>;
61                         debounce-interval = <15>;
62                         linux,can-disable;
63                         wakeup-source;
64                 };
65
66                 key-camera-snapshot {
67                         label = "Camera Snapshot";
68                         linux,code = <KEY_CAMERA>;
69                         gpios = <&pm8150b_gpios 1 GPIO_ACTIVE_LOW>;
70                         debounce-interval = <15>;
71                         linux,can-disable;
72                         wakeup-source;
73                 };
74
75                 key-vol-down {
76                         label = "Volume Down";
77                         linux,code = <KEY_VOLUMEDOWN>;
78                         gpios = <&pm8150_gpios 1 GPIO_ACTIVE_LOW>;
79                         debounce-interval = <15>;
80                         linux,can-disable;
81                         gpio-key,wakeup;
82                 };
83         };
84
85         vph_pwr: vph-pwr-regulator {
86                 compatible = "regulator-fixed";
87                 regulator-name = "vph_pwr";
88                 regulator-min-microvolt = <3700000>;
89                 regulator-max-microvolt = <3700000>;
90         };
91
92         /* S6c is really ebi.lvl but it's there for supply map completeness sake. */
93         vreg_s6c_0p88: smpc6-regulator {
94                 compatible = "regulator-fixed";
95                 regulator-name = "vreg_s6c_0p88";
96
97                 regulator-min-microvolt = <880000>;
98                 regulator-max-microvolt = <880000>;
99                 regulator-always-on;
100                 vin-supply = <&vph_pwr>;
101         };
102
103         reserved-memory {
104                 adsp_mem: memory@8a100000 {
105                         reg = <0x0 0x8a100000 0x0 0x2500000>;
106                         no-map;
107                 };
108
109                 spss_mem: memory@8c600000 {
110                         reg = <0x0 0x8c600000 0x0 0x100000>;
111                         no-map;
112                 };
113
114                 cdsp_secure_heap: memory@8c700000 {
115                         reg = <0x0 0x8c700000 0x0 0x4600000>;
116                         no-map;
117                 };
118
119                 cont_splash_mem: memory@9c000000 {
120                         reg = <0x0 0x9c000000 0x0 0x2300000>;
121                         no-map;
122                 };
123
124                 ramoops@ffc00000 {
125                         compatible = "ramoops";
126                         reg = <0x0 0xffc00000 0x0 0x100000>;
127                         record-size = <0x1000>;
128                         console-size = <0x40000>;
129                         pmsg-size = <0x20000>;
130                         ecc-size = <16>;
131                         no-map;
132                 };
133         };
134 };
135
136 &adsp {
137         status = "okay";
138 };
139
140 &apps_rsc {
141         pm8150-rpmh-regulators {
142                 compatible = "qcom,pm8150-rpmh-regulators";
143                 qcom,pmic-id = "a";
144
145                 vdd-s1-supply = <&vph_pwr>;
146                 vdd-s2-supply = <&vph_pwr>;
147                 vdd-s3-supply = <&vph_pwr>;
148                 vdd-s4-supply = <&vph_pwr>;
149                 vdd-s5-supply = <&vph_pwr>;
150                 vdd-s6-supply = <&vph_pwr>;
151                 vdd-s7-supply = <&vph_pwr>;
152                 vdd-s8-supply = <&vph_pwr>;
153                 vdd-s9-supply = <&vph_pwr>;
154                 vdd-s10-supply = <&vph_pwr>;
155                 vdd-l1-l8-l11-supply = <&vreg_s6c_0p88>;
156                 vdd-l2-l10-supply = <&vreg_bob>;
157                 vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p6>;
158                 vdd-l6-l9-supply = <&vreg_s8c_1p2>;
159                 vdd-l7-l12-l14-l15-supply = <&vreg_s5a_1p9>;
160                 vdd-l13-l16-l17-supply = <&vreg_bob>;
161
162                 /* (S1+S2+S3) - cx.lvl (ARC) */
163
164                 vreg_s4a_1p8: smps4 {
165                         regulator-name = "vreg_s4a_1p8";
166                         regulator-min-microvolt = <1800000>;
167                         regulator-max-microvolt = <1920000>;
168                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
169                 };
170
171                 vreg_s5a_1p9: smps5 {
172                         regulator-name = "vreg_s5a_1p9";
173                         regulator-min-microvolt = <1824000>;
174                         regulator-max-microvolt = <2040000>;
175                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
176                 };
177
178                 vreg_s6a_0p6: smps6 {
179                         regulator-name = "vreg_s6a_0p6";
180                         regulator-min-microvolt = <600000>;
181                         regulator-max-microvolt = <1128000>;
182                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
183                 };
184
185                 vreg_l2a_3p1: ldo2 {
186                         regulator-name = "vreg_l2a_3p1";
187                         regulator-min-microvolt = <3072000>;
188                         regulator-max-microvolt = <3072000>;
189                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
190                 };
191
192                 vreg_l3a_0p9: ldo3 {
193                         regulator-name = "vreg_l3a_0p9";
194                         regulator-min-microvolt = <928000>;
195                         regulator-max-microvolt = <932000>;
196                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
197                 };
198
199                 /* L4 - lmx.lvl (ARC) */
200
201                 vreg_l5a_0p88: ldo5 {
202                         regulator-name = "vreg_l5a_0p88";
203                         regulator-min-microvolt = <880000>;
204                         regulator-max-microvolt = <880000>;
205                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
206                 };
207
208                 vreg_l6a_1p2: ldo6 {
209                         regulator-name = "vreg_l6a_1p2";
210                         regulator-min-microvolt = <1200000>;
211                         regulator-max-microvolt = <1200000>;
212                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
213                 };
214
215                 /* L7 is unused. */
216
217                 vreg_l9a_1p2: ldo9 {
218                         regulator-name = "vreg_l9a_1p2";
219                         regulator-min-microvolt = <1200000>;
220                         regulator-max-microvolt = <1200000>;
221                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
222                 };
223
224                 /* L10 is unused, L11 - lcx.lvl (ARC) */
225
226                 vreg_l12a_1p8: ldo12 {
227                         regulator-name = "vreg_l12a_1p8";
228                         regulator-min-microvolt = <1800000>;
229                         regulator-max-microvolt = <1800000>;
230                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
231                 };
232
233                 /* L13 is unused. */
234
235                 vreg_l14a_1p8: ldo14 {
236                         regulator-name = "vreg_l14a_1p8";
237                         regulator-min-microvolt = <1800000>;
238                         regulator-max-microvolt = <1880000>;
239                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
240                 };
241
242                 /* L15 & L16 are unused. */
243
244                 vreg_l17a_3p0: ldo17 {
245                         regulator-name = "vreg_l17a_3p0";
246                         regulator-min-microvolt = <2496000>;
247                         regulator-max-microvolt = <3008000>;
248                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
249                 };
250
251                 vreg_l18a_0p9: ldo18 {
252                         regulator-name = "vreg_l18a_0p9";
253                         regulator-min-microvolt = <800000>;
254                         regulator-max-microvolt = <920000>;
255                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
256                 };
257         };
258
259         /*
260          * Remaining regulators that are not yet supported:
261          * OLEDB: 4925000-8100000
262          * ab: 4600000-6100000
263          * ibb: 800000-5400000
264          */
265         pm8150l-rpmh-regulators {
266                 compatible = "qcom,pm8150l-rpmh-regulators";
267                 qcom,pmic-id = "c";
268
269                 vdd-s1-supply = <&vph_pwr>;
270                 vdd-s2-supply = <&vph_pwr>;
271                 vdd-s3-supply = <&vph_pwr>;
272                 vdd-s4-supply = <&vph_pwr>;
273                 vdd-s5-supply = <&vph_pwr>;
274                 vdd-s6-supply = <&vph_pwr>;
275                 vdd-s7-supply = <&vph_pwr>;
276                 vdd-s8-supply = <&vph_pwr>;
277                 vdd-l1-l8-supply = <&vreg_s4a_1p8>;
278                 vdd-l2-l3-supply = <&vreg_s8c_1p2>;
279                 vdd-l4-l5-l6-supply = <&vreg_bob>;
280                 vdd-l7-l11-supply = <&vreg_bob>;
281                 vdd-l9-l10-supply = <&vreg_bob>;
282                 vdd-bob-supply = <&vph_pwr>;
283
284                 vreg_bob: bob {
285                         regulator-name = "vreg_bob";
286                         regulator-min-microvolt = <3350000>;
287                         regulator-max-microvolt = <3960000>;
288                         regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
289                 };
290
291                 /*
292                  * S1-S6 are ARCs:
293                  * (S1+S2) - gfx.lvl,
294                  * S3 - mx.lvl,
295                  * (S4+S5) - mmcx.lvl,
296                  * S6 - ebi.lvl
297                  */
298
299                 vreg_s7c_0p35: smps7 {
300                         regulator-name = "vreg_s7c_0p35";
301                         regulator-min-microvolt = <348000>;
302                         regulator-max-microvolt = <1000000>;
303                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
304                 };
305
306                 vreg_s8c_1p2: smps8 {
307                         regulator-name = "vreg_s8c_1p2";
308                         regulator-min-microvolt = <1200000>;
309                         regulator-max-microvolt = <1400000>;
310                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
311                 };
312
313                 vreg_l1c_1p8: ldo1 {
314                         regulator-name = "vreg_l1c_1p8";
315                         regulator-min-microvolt = <1800000>;
316                         regulator-max-microvolt = <1800000>;
317                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
318                 };
319
320                 /* L2-4 are unused. */
321
322                 vreg_l5c_1p8: ldo5 {
323                         regulator-name = "vreg_l5c_1p8";
324                         regulator-min-microvolt = <1800000>;
325                         regulator-max-microvolt = <2800000>;
326                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
327                 };
328
329                 vreg_l6c_2p9: ldo6 {
330                         regulator-name = "vreg_l6c_2p9";
331                         regulator-min-microvolt = <1800000>;
332                         regulator-max-microvolt = <2960000>;
333                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
334                         regulator-allow-set-load;
335                         regulator-allowed-modes =
336                             <RPMH_REGULATOR_MODE_LPM
337                              RPMH_REGULATOR_MODE_HPM>;
338                 };
339
340                 vreg_l7c_2p85: ldo7 {
341                         regulator-name = "vreg_l7c_2p85";
342                         regulator-min-microvolt = <2856000>;
343                         regulator-max-microvolt = <3104000>;
344                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
345                 };
346
347                 vreg_l8c_1p8: ldo8 {
348                         regulator-name = "vreg_l8c_1p8";
349                         regulator-min-microvolt = <1800000>;
350                         regulator-max-microvolt = <1800000>;
351                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
352                 };
353
354                 vreg_l9c_2p9: ldo9 {
355                         regulator-name = "vreg_l9c_2p9";
356                         regulator-min-microvolt = <2704000>;
357                         regulator-max-microvolt = <2960000>;
358                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
359                         regulator-allow-set-load;
360                         regulator-allowed-modes =
361                             <RPMH_REGULATOR_MODE_LPM
362                              RPMH_REGULATOR_MODE_HPM>;
363                 };
364
365                 vreg_l10c_3p3: ldo10 {
366                         regulator-name = "vreg_l10c_3p3";
367                         regulator-min-microvolt = <3296000>;
368                         regulator-max-microvolt = <3296000>;
369                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
370                 };
371
372                 vreg_l11c_3p0: ldo11 {
373                         regulator-name = "vreg_l11c_3p0";
374                         regulator-min-microvolt = <3000000>;
375                         regulator-max-microvolt = <3000000>;
376                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
377                 };
378         };
379
380         pm8009-rpmh-regulators {
381                 compatible = "qcom,pm8009-rpmh-regulators";
382                 qcom,pmic-id = "f";
383
384                 vdd-s1-supply = <&vph_pwr>;
385                 vdd-s2-supply = <&vreg_bob>;
386                 vdd-l2-supply = <&vreg_s8c_1p2>;
387                 vdd-l5-l6-supply = <&vreg_bob>;
388                 vdd-l7-supply = <&vreg_s4a_1p8>;
389
390                 vreg_s1f_1p2: smps1 {
391                         regulator-name = "vreg_s1f_1p2";
392                         regulator-min-microvolt = <1200000>;
393                         regulator-max-microvolt = <1200000>;
394                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
395                 };
396
397                 vreg_s2f_0p5: smps2 {
398                         regulator-name = "vreg_s2f_0p5";
399                         regulator-min-microvolt = <512000>;
400                         regulator-max-microvolt = <1100000>;
401                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
402                 };
403
404                 /* L1 is unused. */
405
406                 vreg_l2f_1p3: ldo2 {
407                         regulator-name = "vreg_l2f_1p3";
408                         regulator-min-microvolt = <1304000>;
409                         regulator-max-microvolt = <1304000>;
410                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
411                 };
412
413                 /* L3 & L4 are unused. */
414
415                 vreg_l5f_2p8: ldo5 {
416                         regulator-name = "vreg_l5f_2p85";
417                         regulator-min-microvolt = <2800000>;
418                         regulator-max-microvolt = <2800000>;
419                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
420                 };
421
422                 vreg_l6f_2p8: ldo6 {
423                         regulator-name = "vreg_l6f_2p8";
424                         regulator-min-microvolt = <2800000>;
425                         regulator-max-microvolt = <2800000>;
426                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
427                 };
428
429                 vreg_l7f_1p8: ldo7 {
430                         regulator-name = "vreg_l7f_1p8";
431                         regulator-min-microvolt = <1800000>;
432                         regulator-max-microvolt = <1800000>;
433                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
434                 };
435         };
436 };
437
438 &cdsp {
439         status = "okay";
440 };
441
442 &gpi_dma0 {
443         status = "okay";
444 };
445
446 &gpi_dma1 {
447         status = "okay";
448 };
449
450 &gpi_dma2 {
451         status = "okay";
452 };
453
454 &i2c1 {
455         status = "okay";
456         clock-frequency = <400000>;
457
458         /* NXP PN553 NFC @ 28 */
459 };
460
461 &i2c2 {
462         status = "okay";
463         clock-frequency = <1000000>;
464
465         cs35l41_l: cs35l41@40 {
466                 compatible = "cirrus,cs35l41";
467                 reg = <0x40>;
468                 interrupt-parent = <&tlmm>;
469                 interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
470                 reset-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>;
471                 cirrus,boost-peak-milliamp = <4000>;
472                 cirrus,boost-ind-nanohenry = <1000>;
473                 cirrus,boost-cap-microfarad = <15>;
474                 cirrus,asp-sdout-hiz = <3>;
475                 cirrus,gpio2-src-select = <2>;
476                 cirrus,gpio2-output-enable;
477                 #sound-dai-cells = <1>;
478         };
479
480         cs35l41_r: cs35l41@41 {
481                 compatible = "cirrus,cs35l41";
482                 reg = <0x41>;
483                 interrupt-parent = <&tlmm>;
484                 interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
485                 reset-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>;
486                 cirrus,boost-peak-milliamp = <4000>;
487                 cirrus,boost-ind-nanohenry = <1000>;
488                 cirrus,boost-cap-microfarad = <15>;
489                 cirrus,asp-sdout-hiz = <3>;
490                 cirrus,gpio2-src-select = <2>;
491                 cirrus,gpio2-output-enable;
492                 #sound-dai-cells = <1>;
493         };
494 };
495
496 &i2c5 {
497         status = "okay";
498         clock-frequency = <400000>;
499
500         /* Dialog SLG51000 CMIC @ 75 */
501 };
502
503 &i2c9 {
504         status = "okay";
505         clock-frequency = <400000>;
506
507         /* AMS TCS3490 RGB+IR color sensor @ 72 */
508 };
509
510 &i2c13 {
511         status = "okay";
512         clock-frequency = <400000>;
513
514         touchscreen@48 {
515                 compatible = "samsung,s6sy761";
516                 reg = <0x48>;
517                 interrupt-parent = <&tlmm>;
518                 interrupts = <39 0x2008>;
519                 /* It's "vddio" downstream but it works anyway! */
520                 vdd-supply = <&vreg_l1c_1p8>;
521                 avdd-supply = <&vreg_l10c_3p3>;
522
523                 pinctrl-names = "default";
524                 pinctrl-0 = <&ts_int_default>;
525         };
526 };
527
528 &i2c15 {
529         status = "okay";
530         clock-frequency = <400000>;
531
532         /* Qcom SMB1390 @ 10 */
533         /* Silicon Labs SI4704 FM Radio Receiver @ 11 */
534         /* Qcom SMB1390_slave @ 18 */
535         /* HALO HL6111R Qi charger @ 25 */
536         /* Richwave RTC6226 FM Radio Receiver @ 64 */
537 };
538
539 &pcie0 {
540         status = "okay";
541 };
542
543 &pcie0_phy {
544         status = "okay";
545
546         vdda-phy-supply = <&vreg_l5a_0p88>;
547         vdda-pll-supply = <&vreg_l9a_1p2>;
548 };
549
550 &pcie2 {
551         status = "okay";
552
553         pinctrl-0 = <&pcie2_default_state &mdm2ap_default &ap2mdm_default>;
554 };
555
556 &pcie2_phy {
557         status = "okay";
558
559         vdda-phy-supply = <&vreg_l5a_0p88>;
560         vdda-pll-supply = <&vreg_l9a_1p2>;
561 };
562
563 &pm8150_gpios {
564         vol_down_n: vol-down-n-state {
565                 pins = "gpio1";
566                 function = "normal";
567                 power-source = <0>;
568                 bias-pull-up;
569                 input-enable;
570         };
571 };
572
573 &pm8150b_gpios {
574         snapshot_n: snapshot-n-state {
575                 pins = "gpio1";
576                 function = "normal";
577                 power-source = <0>;
578                 bias-pull-up;
579                 input-enable;
580         };
581
582         focus_n: focus-n-state {
583                 pins = "gpio2";
584                 function = "normal";
585                 power-source = <0>;
586                 bias-pull-up;
587                 input-enable;
588         };
589 };
590
591 &pon_pwrkey {
592         status = "okay";
593 };
594
595 &pon_resin {
596         status = "okay";
597
598         linux,code = <KEY_VOLUMEUP>;
599 };
600
601 &qupv3_id_0 {
602         status = "okay";
603 };
604
605 &qupv3_id_1 {
606         status = "okay";
607 };
608
609 &qupv3_id_2 {
610         status = "okay";
611 };
612
613 &sdhc_2 {
614         status = "okay";
615
616         cd-gpios = <&tlmm 77 GPIO_ACTIVE_HIGH>;
617         pinctrl-names = "default", "sleep";
618         pinctrl-0 = <&sdc2_default_state &sdc2_card_det_n>;
619         pinctrl-1 = <&sdc2_sleep_state &sdc2_card_det_n>;
620         vmmc-supply = <&vreg_l9c_2p9>;
621         vqmmc-supply = <&vreg_l6c_2p9>;
622         bus-width = <4>;
623         no-sdio;
624         no-emmc;
625 };
626
627 &slpi {
628         status = "okay";
629 };
630
631 &tlmm {
632         gpio-reserved-ranges = <40 4>, <52 4>;
633
634         sdc2_default_state: sdc2-default {
635                 clk {
636                         pins = "sdc2_clk";
637                         drive-strength = <16>;
638                         bias-disable;
639                 };
640
641                 cmd {
642                         pins = "sdc2_cmd";
643                         drive-strength = <16>;
644                         bias-pull-up;
645                 };
646
647                 data {
648                         pins = "sdc2_data";
649                         drive-strength = <16>;
650                         bias-pull-up;
651                 };
652         };
653
654         mdm2ap_default: mdm2ap-default {
655                 pins = "gpio1", "gpio3";
656                 function = "gpio";
657                 drive-strength = <8>;
658                 bias-disable;
659         };
660
661         ts_int_default: ts-int-default {
662                 pins = "gpio39";
663                 function = "gpio";
664                 drive-strength = <2>;
665                 bias-disable;
666                 input-enable;
667         };
668
669         ap2mdm_default: ap2mdm-default {
670                 pins = "gpio56", "gpio57";
671                 function = "gpio";
672                 drive-strength = <16>;
673                 bias-disable;
674         };
675
676         sdc2_card_det_n: sd-card-det-n {
677                 pins = "gpio77";
678                 function = "gpio";
679                 bias-pull-up;
680                 drive-strength = <2>;
681         };
682 };
683
684 &uart12 {
685         status = "okay";
686 };
687
688 /* BIG WARNING! DO NOT TOUCH UFS, YOUR DEVICE WILL DIE! */
689 &ufs_mem_hc { status = "disabled"; };
690 &ufs_mem_phy { status = "disabled"; };
691
692 &usb_1 {
693         status = "okay";
694 };
695
696 &usb_1_dwc3 {
697         dr_mode = "peripheral";
698 };
699
700 &usb_1_hsphy {
701         status = "okay";
702
703         vdda-pll-supply = <&vreg_l5a_0p88>;
704         vdda18-supply = <&vreg_l12a_1p8>;
705         vdda33-supply = <&vreg_l2a_3p1>;
706 };
707
708 &usb_1_qmpphy {
709         status = "okay";
710
711         vdda-phy-supply = <&vreg_l9a_1p2>;
712         vdda-pll-supply = <&vreg_l18a_0p9>;
713 };