Merge tag 'soc-drivers-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[linux-block.git] / arch / arm64 / boot / dts / rockchip / rk3588-orangepi-5-plus.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 /*
3  * Copyright (c) 2023 OndÅ™ej Jirman <megi@xff.cz>
4  */
5
6 /dts-v1/;
7
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/leds/common.h>
10 #include <dt-bindings/input/input.h>
11 #include <dt-bindings/pinctrl/rockchip.h>
12 #include <dt-bindings/usb/pd.h>
13 #include "rk3588.dtsi"
14
15 / {
16         model = "Xunlong Orange Pi 5 Plus";
17         compatible = "xunlong,orangepi-5-plus", "rockchip,rk3588";
18
19         aliases {
20                 mmc0 = &sdhci;
21                 mmc1 = &sdmmc;
22         };
23
24         chosen {
25                 stdout-path = "serial2:1500000n8";
26         };
27
28         adc-keys-0 {
29                 compatible = "adc-keys";
30                 io-channels = <&saradc 0>;
31                 io-channel-names = "buttons";
32                 keyup-threshold-microvolt = <1800000>;
33                 poll-interval = <100>;
34
35                 button-maskrom {
36                         label = "Mask Rom";
37                         linux,code = <KEY_SETUP>;
38                         press-threshold-microvolt = <2000>;
39                 };
40         };
41
42         adc-keys-1 {
43                 compatible = "adc-keys";
44                 io-channels = <&saradc 1>;
45                 io-channel-names = "buttons";
46                 keyup-threshold-microvolt = <1800000>;
47                 poll-interval = <100>;
48
49                 button-recovery {
50                         label = "Recovery";
51                         linux,code = <KEY_VENDOR>;
52                         press-threshold-microvolt = <2000>;
53                 };
54         };
55
56         speaker_amp: speaker-audio-amplifier {
57                 compatible = "simple-audio-amplifier";
58                 enable-gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>;
59                 sound-name-prefix = "Speaker Amp";
60         };
61
62         headphone_amp: headphones-audio-amplifier {
63                 compatible = "simple-audio-amplifier";
64                 enable-gpios = <&gpio3 RK_PA7 GPIO_ACTIVE_HIGH>;
65                 sound-name-prefix = "Headphones Amp";
66         };
67
68         ir-receiver {
69                 compatible = "gpio-ir-receiver";
70                 gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_LOW>;
71                 pinctrl-names = "default";
72                 pinctrl-0 = <&ir_receiver_pin>;
73         };
74
75         gpio-leds {
76                 compatible = "gpio-leds";
77                 pinctrl-names = "default";
78                 pinctrl-0 = <&blue_led_pin>;
79
80                 led {
81                         color = <LED_COLOR_ID_BLUE>;
82                         function = LED_FUNCTION_INDICATOR;
83                         function-enumerator = <1>;
84                         gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_HIGH>;
85                 };
86         };
87
88         fan: pwm-fan {
89                 compatible = "pwm-fan";
90                 cooling-levels = <0 70 75 80 100>;
91                 fan-supply = <&vcc5v0_sys>;
92                 pwms = <&pwm3 0 50000 0>;
93                 #cooling-cells = <2>;
94         };
95
96         pwm-leds {
97                 compatible = "pwm-leds";
98
99                 led {
100                         color = <LED_COLOR_ID_GREEN>;
101                         function = LED_FUNCTION_INDICATOR;
102                         function-enumerator = <2>;
103                         max-brightness = <255>;
104                         pwms = <&pwm2 0 25000 0>;
105                 };
106         };
107
108         sound {
109                 compatible = "simple-audio-card";
110                 pinctrl-names = "default";
111                 pinctrl-0 = <&hp_detect>;
112                 simple-audio-card,name = "Analog";
113                 simple-audio-card,aux-devs = <&speaker_amp>, <&headphone_amp>;
114                 simple-audio-card,format = "i2s";
115                 simple-audio-card,mclk-fs = <256>;
116                 simple-audio-card,hp-det-gpio = <&gpio1 RK_PD3 GPIO_ACTIVE_LOW>;
117                 simple-audio-card,bitclock-master = <&daicpu>;
118                 simple-audio-card,frame-master = <&daicpu>;
119                 /*TODO: SARADC_IN3 is used as MIC detection / key input */
120
121                 simple-audio-card,widgets =
122                         "Microphone", "Onboard Microphone",
123                         "Microphone", "Microphone Jack",
124                         "Speaker", "Speaker",
125                         "Headphone", "Headphones";
126
127                 simple-audio-card,routing =
128                         "Headphones", "LOUT1",
129                         "Headphones", "ROUT1",
130                         "Speaker", "LOUT2",
131                         "Speaker", "ROUT2",
132
133                         "Headphones", "Headphones Amp OUTL",
134                         "Headphones", "Headphones Amp OUTR",
135                         "Headphones Amp INL", "LOUT1",
136                         "Headphones Amp INR", "ROUT1",
137
138                         "Speaker", "Speaker Amp OUTL",
139                         "Speaker", "Speaker Amp OUTR",
140                         "Speaker Amp INL", "LOUT2",
141                         "Speaker Amp INR", "ROUT2",
142
143                         /* single ended signal to LINPUT1 */
144                         "LINPUT1", "Microphone Jack",
145                         "RINPUT1", "Microphone Jack",
146                         /* differential signal */
147                         "LINPUT2", "Onboard Microphone",
148                         "RINPUT2", "Onboard Microphone";
149
150                 daicpu: simple-audio-card,cpu {
151                         sound-dai = <&i2s0_8ch>;
152                         system-clock-frequency = <12288000>;
153                 };
154
155                 daicodec: simple-audio-card,codec {
156                         sound-dai = <&es8388>;
157                         system-clock-frequency = <12288000>;
158                 };
159         };
160
161         vcc3v3_pcie30: vcc3v3-pcie30-regulator {
162                 compatible = "regulator-fixed";
163                 enable-active-high;
164                 gpios = <&gpio2 RK_PB6 GPIO_ACTIVE_HIGH>;
165                 regulator-name = "vcc3v3_pcie30";
166                 regulator-min-microvolt = <3300000>;
167                 regulator-max-microvolt = <3300000>;
168                 startup-delay-us = <5000>;
169                 vin-supply = <&vcc5v0_sys>;
170         };
171
172         vcc3v3_pcie_eth: vcc3v3-pcie-eth-regulator {
173                 compatible = "regulator-fixed";
174                 gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>;
175                 regulator-name = "vcc3v3_pcie_eth";
176                 regulator-min-microvolt = <3300000>;
177                 regulator-max-microvolt = <3300000>;
178                 startup-delay-us = <50000>;
179                 vin-supply = <&vcc5v0_sys>;
180         };
181
182         vcc3v3_wf: vcc3v3-wf-regulator {
183                 compatible = "regulator-fixed";
184                 enable-active-high;
185                 gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
186                 regulator-name = "vcc3v3_wf";
187                 regulator-min-microvolt = <3300000>;
188                 regulator-max-microvolt = <3300000>;
189                 startup-delay-us = <50000>;
190                 vin-supply = <&vcc5v0_sys>;
191         };
192
193         vcc5v0_sys: vcc5v0-sys-regulator {
194                 compatible = "regulator-fixed";
195                 regulator-name = "vcc5v0_sys";
196                 regulator-always-on;
197                 regulator-boot-on;
198                 regulator-min-microvolt = <5000000>;
199                 regulator-max-microvolt = <5000000>;
200         };
201
202         vcc5v0_usb20: vcc5v0-usb20-regulator {
203                 compatible = "regulator-fixed";
204                 enable-active-high;
205                 gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_HIGH>;
206                 pinctrl-names = "default";
207                 pinctrl-0 = <&vcc5v0_usb20_en>;
208                 regulator-name = "vcc5v0_usb20";
209                 regulator-min-microvolt = <5000000>;
210                 regulator-max-microvolt = <5000000>;
211                 vin-supply = <&vcc5v0_sys>;
212         };
213 };
214
215 &combphy0_ps {
216         status = "okay";
217 };
218
219 &combphy1_ps {
220         status = "okay";
221 };
222
223 &combphy2_psu {
224         status = "okay";
225 };
226
227 &cpu_b0 {
228         cpu-supply = <&vdd_cpu_big0_s0>;
229 };
230
231 &cpu_b1 {
232         cpu-supply = <&vdd_cpu_big0_s0>;
233 };
234
235 &cpu_b2 {
236         cpu-supply = <&vdd_cpu_big1_s0>;
237 };
238
239 &cpu_b3 {
240         cpu-supply = <&vdd_cpu_big1_s0>;
241 };
242
243 &cpu_l0 {
244         cpu-supply = <&vdd_cpu_lit_s0>;
245 };
246
247 &cpu_l1 {
248         cpu-supply = <&vdd_cpu_lit_s0>;
249 };
250
251 &cpu_l2 {
252         cpu-supply = <&vdd_cpu_lit_s0>;
253 };
254
255 &cpu_l3 {
256         cpu-supply = <&vdd_cpu_lit_s0>;
257 };
258
259 &i2c0 {
260         pinctrl-names = "default";
261         pinctrl-0 = <&i2c0m2_xfer>;
262         status = "okay";
263
264         vdd_cpu_big0_s0: regulator@42 {
265                 compatible = "rockchip,rk8602";
266                 reg = <0x42>;
267                 fcs,suspend-voltage-selector = <1>;
268                 regulator-name = "vdd_cpu_big0_s0";
269                 regulator-always-on;
270                 regulator-boot-on;
271                 regulator-min-microvolt = <550000>;
272                 regulator-max-microvolt = <1050000>;
273                 regulator-ramp-delay = <2300>;
274                 vin-supply = <&vcc5v0_sys>;
275
276                 regulator-state-mem {
277                         regulator-off-in-suspend;
278                 };
279         };
280
281         vdd_cpu_big1_s0: regulator@43 {
282                 compatible = "rockchip,rk8603", "rockchip,rk8602";
283                 reg = <0x43>;
284                 fcs,suspend-voltage-selector = <1>;
285                 regulator-name = "vdd_cpu_big1_s0";
286                 regulator-always-on;
287                 regulator-boot-on;
288                 regulator-min-microvolt = <550000>;
289                 regulator-max-microvolt = <1050000>;
290                 regulator-ramp-delay = <2300>;
291                 vin-supply = <&vcc5v0_sys>;
292
293                 regulator-state-mem {
294                         regulator-off-in-suspend;
295                 };
296         };
297 };
298
299 &i2c6 {
300         clock-frequency = <400000>;
301         status = "okay";
302
303         hym8563: rtc@51 {
304                 compatible = "haoyu,hym8563";
305                 reg = <0x51>;
306                 interrupt-parent = <&gpio0>;
307                 interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
308                 #clock-cells = <0>;
309                 clock-output-names = "hym8563";
310                 pinctrl-names = "default";
311                 pinctrl-0 = <&hym8563_int>;
312                 wakeup-source;
313         };
314 };
315
316 &i2c7 {
317         status = "okay";
318
319         /* PLDO2 vcca 1.8V, BUCK8 gated by PLDO2 being enabled */
320         es8388: audio-codec@11 {
321                 compatible = "everest,es8388";
322                 reg = <0x11>;
323                 clocks = <&cru I2S0_8CH_MCLKOUT>;
324                 clock-names = "mclk";
325                 AVDD-supply = <&vcc_1v8_s0>;
326                 DVDD-supply = <&vcc_1v8_s0>;
327                 HPVDD-supply = <&vcc_3v3_s0>;
328                 PVDD-supply = <&vcc_3v3_s0>;
329                 assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
330                 assigned-clock-rates = <12288000>;
331                 #sound-dai-cells = <0>;
332         };
333 };
334
335 &i2s0_8ch {
336         pinctrl-names = "default";
337         pinctrl-0 = <&i2s0_lrck
338                      &i2s0_mclk
339                      &i2s0_sclk
340                      &i2s0_sdi0
341                      &i2s0_sdo0>;
342         status = "okay";
343 };
344
345 &i2s2_2ch {
346         pinctrl-names = "default";
347         pinctrl-0 = <&i2s2m0_lrck
348                      &i2s2m0_sclk
349                      &i2s2m0_sdi
350                      &i2s2m0_sdo>;
351         status = "okay";
352 };
353
354 /* phy1 - M.KEY socket */
355 &pcie2x1l0 {
356         reset-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
357         vpcie3v3-supply = <&vcc3v3_wf>;
358         status = "okay";
359 };
360
361 /* phy2 - right ethernet port */
362 &pcie2x1l1 {
363         reset-gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_HIGH>;
364         vpcie3v3-supply = <&vcc3v3_pcie_eth>;
365         status = "okay";
366 };
367
368 /* phy0 - left ethernet port */
369 &pcie2x1l2 {
370         reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
371         vpcie3v3-supply = <&vcc3v3_pcie_eth>;
372         status = "okay";
373 };
374
375 &pcie30phy {
376         status = "okay";
377 };
378
379 &pcie3x4 {
380         reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
381         vpcie3v3-supply = <&vcc3v3_pcie30>;
382         status = "okay";
383 };
384
385 &pinctrl {
386         hym8563 {
387                 hym8563_int: hym8563-int {
388                         rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
389                 };
390         };
391
392         leds {
393                 blue_led_pin: blue-led {
394                         rockchip,pins = <3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
395                 };
396         };
397
398         ir-receiver {
399                 ir_receiver_pin: ir-receiver-pin {
400                         rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
401                 };
402         };
403
404         sound {
405                 hp_detect: hp-detect {
406                         rockchip,pins = <1 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
407                 };
408         };
409
410         usb {
411                 vcc5v0_usb20_en: vcc5v0-usb20-en {
412                         rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
413                 };
414         };
415 };
416
417 &pwm2 {
418         pinctrl-0 = <&pwm2m1_pins>;
419         pinctrl-names = "default";
420         status = "okay";
421 };
422
423 &pwm3 {
424         pinctrl-0 = <&pwm3m1_pins>;
425         status = "okay";
426 };
427
428 &saradc {
429         vref-supply = <&vcc_1v8_s0>;
430         status = "okay";
431 };
432
433 &sdhci {
434         bus-width = <8>;
435         no-sdio;
436         no-sd;
437         non-removable;
438         max-frequency = <200000000>;
439         mmc-hs400-1_8v;
440         mmc-hs400-enhanced-strobe;
441         status = "okay";
442 };
443
444 &sdmmc {
445         bus-width = <4>;
446         cap-sd-highspeed;
447         disable-wp;
448         max-frequency = <150000000>;
449         no-sdio;
450         no-mmc;
451         sd-uhs-sdr104;
452         vmmc-supply = <&vcc_3v3_s3>;
453         vqmmc-supply = <&vccio_sd_s0>;
454         status = "okay";
455 };
456
457 &sfc {
458         pinctrl-names = "default";
459         pinctrl-0 = <&fspim1_pins>;
460         status = "okay";
461
462         spi_flash: flash@0 {
463                 compatible = "jedec,spi-nor";
464                 reg = <0x0>;
465                 spi-max-frequency = <100000000>;
466                 spi-rx-bus-width = <4>;
467                 spi-tx-bus-width = <1>;
468         };
469 };
470
471 &spi2 {
472         assigned-clocks = <&cru CLK_SPI2>;
473         assigned-clock-rates = <200000000>;
474         num-cs = <1>;
475         pinctrl-names = "default";
476         pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
477         status = "okay";
478
479         pmic@0 {
480                 compatible = "rockchip,rk806";
481                 reg = <0x0>;
482                 interrupt-parent = <&gpio0>;
483                 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
484                 pinctrl-names = "default";
485                 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
486                             <&rk806_dvs2_null>, <&rk806_dvs3_null>;
487                 spi-max-frequency = <1000000>;
488
489                 vcc1-supply = <&vcc5v0_sys>;
490                 vcc2-supply = <&vcc5v0_sys>;
491                 vcc3-supply = <&vcc5v0_sys>;
492                 vcc4-supply = <&vcc5v0_sys>;
493                 vcc5-supply = <&vcc5v0_sys>;
494                 vcc6-supply = <&vcc5v0_sys>;
495                 vcc7-supply = <&vcc5v0_sys>;
496                 vcc8-supply = <&vcc5v0_sys>;
497                 vcc9-supply = <&vcc5v0_sys>;
498                 vcc10-supply = <&vcc5v0_sys>;
499                 vcc11-supply = <&vcc_2v0_pldo_s3>;
500                 vcc12-supply = <&vcc5v0_sys>;
501                 vcc13-supply = <&vdd2_ddr_s3>;
502                 vcc14-supply = <&vdd2_ddr_s3>;
503                 vcca-supply = <&vcc5v0_sys>;
504
505                 gpio-controller;
506                 #gpio-cells = <2>;
507
508                 rk806_dvs1_null: dvs1-null-pins {
509                         pins = "gpio_pwrctrl2";
510                         function = "pin_fun0";
511                 };
512
513                 rk806_dvs2_null: dvs2-null-pins {
514                         pins = "gpio_pwrctrl2";
515                         function = "pin_fun0";
516                 };
517
518                 rk806_dvs3_null: dvs3-null-pins {
519                         pins = "gpio_pwrctrl3";
520                         function = "pin_fun0";
521                 };
522
523                 regulators {
524                         vdd_gpu_s0: dcdc-reg1 {
525                                 regulator-name = "vdd_gpu_s0";
526                                 regulator-boot-on;
527                                 regulator-enable-ramp-delay = <400>;
528                                 regulator-min-microvolt = <550000>;
529                                 regulator-max-microvolt = <950000>;
530                                 regulator-ramp-delay = <12500>;
531
532                                 regulator-state-mem {
533                                         regulator-off-in-suspend;
534                                 };
535                         };
536
537                         vdd_cpu_lit_s0: dcdc-reg2 {
538                                 regulator-name = "vdd_cpu_lit_s0";
539                                 regulator-always-on;
540                                 regulator-boot-on;
541                                 regulator-min-microvolt = <550000>;
542                                 regulator-max-microvolt = <950000>;
543                                 regulator-ramp-delay = <12500>;
544
545                                 regulator-state-mem {
546                                         regulator-off-in-suspend;
547                                 };
548                         };
549
550                         vdd_log_s0: dcdc-reg3 {
551                                 regulator-name = "vdd_log_s0";
552                                 regulator-always-on;
553                                 regulator-boot-on;
554                                 regulator-min-microvolt = <675000>;
555                                 regulator-max-microvolt = <825000>;
556                                 regulator-ramp-delay = <12500>;
557
558                                 regulator-state-mem {
559                                         regulator-off-in-suspend;
560                                         regulator-suspend-microvolt = <750000>;
561                                 };
562                         };
563
564                         vdd_vdenc_s0: dcdc-reg4 {
565                                 regulator-name = "vdd_vdenc_s0";
566                                 regulator-always-on;
567                                 regulator-boot-on;
568                                 regulator-min-microvolt = <550000>;
569                                 regulator-max-microvolt = <825000>;
570                                 regulator-ramp-delay = <12500>;
571
572                                 regulator-state-mem {
573                                         regulator-off-in-suspend;
574                                 };
575                         };
576
577                         vdd_ddr_s0: dcdc-reg5 {
578                                 regulator-name = "vdd_ddr_s0";
579                                 regulator-always-on;
580                                 regulator-boot-on;
581                                 regulator-min-microvolt = <675000>;
582                                 regulator-max-microvolt = <900000>;
583                                 regulator-ramp-delay = <12500>;
584
585                                 regulator-state-mem {
586                                         regulator-off-in-suspend;
587                                         regulator-suspend-microvolt = <850000>;
588                                 };
589                         };
590
591                         vdd2_ddr_s3: dcdc-reg6 {
592                                 regulator-name = "vdd2_ddr_s3";
593                                 regulator-always-on;
594                                 regulator-boot-on;
595
596                                 regulator-state-mem {
597                                         regulator-on-in-suspend;
598                                 };
599                         };
600
601                         vcc_2v0_pldo_s3: dcdc-reg7 {
602                                 regulator-name = "vdd_2v0_pldo_s3";
603                                 regulator-always-on;
604                                 regulator-boot-on;
605                                 regulator-min-microvolt = <2000000>;
606                                 regulator-max-microvolt = <2000000>;
607                                 regulator-ramp-delay = <12500>;
608
609                                 regulator-state-mem {
610                                         regulator-on-in-suspend;
611                                         regulator-suspend-microvolt = <2000000>;
612                                 };
613                         };
614
615                         vcc_3v3_s3: dcdc-reg8 {
616                                 regulator-name = "vcc_3v3_s3";
617                                 regulator-always-on;
618                                 regulator-boot-on;
619                                 regulator-min-microvolt = <3300000>;
620                                 regulator-max-microvolt = <3300000>;
621
622                                 regulator-state-mem {
623                                         regulator-on-in-suspend;
624                                         regulator-suspend-microvolt = <3300000>;
625                                 };
626                         };
627
628                         vddq_ddr_s0: dcdc-reg9 {
629                                 regulator-name = "vddq_ddr_s0";
630                                 regulator-always-on;
631                                 regulator-boot-on;
632
633                                 regulator-state-mem {
634                                         regulator-off-in-suspend;
635                                 };
636                         };
637
638                         vcc_1v8_s3: dcdc-reg10 {
639                                 regulator-name = "vcc_1v8_s3";
640                                 regulator-always-on;
641                                 regulator-boot-on;
642                                 regulator-min-microvolt = <1800000>;
643                                 regulator-max-microvolt = <1800000>;
644
645                                 regulator-state-mem {
646                                         regulator-on-in-suspend;
647                                         regulator-suspend-microvolt = <1800000>;
648                                 };
649                         };
650
651                         avcc_1v8_s0: pldo-reg1 {
652                                 regulator-name = "avcc_1v8_s0";
653                                 regulator-always-on;
654                                 regulator-boot-on;
655                                 regulator-min-microvolt = <1800000>;
656                                 regulator-max-microvolt = <1800000>;
657
658                                 regulator-state-mem {
659                                         regulator-off-in-suspend;
660                                         regulator-suspend-microvolt = <1800000>;
661                                 };
662                         };
663
664                         /* shorted to avcc_1v8_s0 on the board */
665                         vcc_1v8_s0: pldo-reg2 {
666                                 regulator-name = "vcc_1v8_s0";
667                                 regulator-always-on;
668                                 regulator-boot-on;
669                                 regulator-min-microvolt = <1800000>;
670                                 regulator-max-microvolt = <1800000>;
671
672                                 regulator-state-mem {
673                                         regulator-off-in-suspend;
674                                         regulator-suspend-microvolt = <1800000>;
675                                 };
676                         };
677
678                         avdd_1v2_s0: pldo-reg3 {
679                                 regulator-name = "avdd_1v2_s0";
680                                 regulator-always-on;
681                                 regulator-boot-on;
682                                 regulator-min-microvolt = <1200000>;
683                                 regulator-max-microvolt = <1200000>;
684
685                                 regulator-state-mem {
686                                         regulator-off-in-suspend;
687                                 };
688                         };
689
690                         vcc_3v3_s0: pldo-reg4 {
691                                 regulator-name = "vcc_3v3_s0";
692                                 regulator-always-on;
693                                 regulator-boot-on;
694                                 regulator-min-microvolt = <3300000>;
695                                 regulator-max-microvolt = <3300000>;
696                                 regulator-ramp-delay = <12500>;
697
698                                 regulator-state-mem {
699                                         regulator-off-in-suspend;
700                                 };
701                         };
702
703                         vccio_sd_s0: pldo-reg5 {
704                                 regulator-name = "vccio_sd_s0";
705                                 regulator-always-on;
706                                 regulator-boot-on;
707                                 regulator-min-microvolt = <1800000>;
708                                 regulator-max-microvolt = <3300000>;
709                                 regulator-ramp-delay = <12500>;
710
711                                 regulator-state-mem {
712                                         regulator-off-in-suspend;
713                                 };
714                         };
715
716                         pldo6_s3: pldo-reg6 {
717                                 regulator-name = "pldo6_s3";
718                                 regulator-always-on;
719                                 regulator-boot-on;
720                                 regulator-min-microvolt = <1800000>;
721                                 regulator-max-microvolt = <1800000>;
722
723                                 regulator-state-mem {
724                                         regulator-on-in-suspend;
725                                         regulator-suspend-microvolt = <1800000>;
726                                 };
727                         };
728
729                         vdd_0v75_s3: nldo-reg1 {
730                                 regulator-name = "vdd_0v75_s3";
731                                 regulator-always-on;
732                                 regulator-boot-on;
733                                 regulator-min-microvolt = <750000>;
734                                 regulator-max-microvolt = <750000>;
735
736                                 regulator-state-mem {
737                                         regulator-on-in-suspend;
738                                         regulator-suspend-microvolt = <750000>;
739                                 };
740                         };
741
742                         vdd_ddr_pll_s0: nldo-reg2 {
743                                 regulator-name = "vdd_ddr_pll_s0";
744                                 regulator-always-on;
745                                 regulator-boot-on;
746                                 regulator-min-microvolt = <850000>;
747                                 regulator-max-microvolt = <850000>;
748
749                                 regulator-state-mem {
750                                         regulator-off-in-suspend;
751                                         regulator-suspend-microvolt = <850000>;
752                                 };
753                         };
754
755                         avdd_0v75_s0: nldo-reg3 {
756                                 regulator-name = "avdd_0v75_s0";
757                                 regulator-always-on;
758                                 regulator-boot-on;
759                                 /*
760                                  * The schematic mentions that actual setting
761                                  * should be 0.8375V. RK3588 datasheet specifies
762                                  * maximum as 0.825V. So we set datasheet max
763                                  * here.
764                                  */
765                                 regulator-min-microvolt = <825000>;
766                                 regulator-max-microvolt = <825000>;
767
768                                 regulator-state-mem {
769                                         regulator-off-in-suspend;
770                                 };
771                         };
772
773                         vdd_0v85_s0: nldo-reg4 {
774                                 regulator-name = "vdd_0v85_s0";
775                                 regulator-always-on;
776                                 regulator-boot-on;
777                                 regulator-min-microvolt = <850000>;
778                                 regulator-max-microvolt = <850000>;
779
780                                 regulator-state-mem {
781                                         regulator-off-in-suspend;
782                                 };
783                         };
784
785                         vdd_0v75_s0: nldo-reg5 {
786                                 regulator-name = "vdd_0v75_s0";
787                                 regulator-always-on;
788                                 regulator-boot-on;
789                                 regulator-min-microvolt = <750000>;
790                                 regulator-max-microvolt = <750000>;
791
792                                 regulator-state-mem {
793                                         regulator-off-in-suspend;
794                                 };
795                         };
796                 };
797         };
798 };
799
800 &tsadc {
801         status = "okay";
802 };
803
804 &u2phy2 {
805         status = "okay";
806 };
807
808 &u2phy3 {
809         status = "okay";
810 };
811
812 &u2phy2_host {
813         phy-supply = <&vcc5v0_usb20>;
814         status = "okay";
815 };
816
817 &u2phy3_host {
818         phy-supply = <&vcc5v0_usb20>;
819         status = "okay";
820 };
821
822 &uart2 {
823         pinctrl-0 = <&uart2m0_xfer>;
824         status = "okay";
825 };
826
827 &uart9 {
828         pinctrl-0 = <&uart9m0_xfer>;
829         status = "okay";
830 };
831
832 &usb_host0_ehci {
833         status = "okay";
834 };
835
836 &usb_host0_ohci {
837         status = "okay";
838 };
839
840 &usb_host1_ehci {
841         status = "okay";
842 };
843
844 &usb_host1_ohci {
845         status = "okay";
846 };