blob: ce8119cbb82485ac39c3b15dfae234f1666ec3c9 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2
3/dts-v1/;
4
5#include <dt-bindings/gpio/gpio.h>
6#include <dt-bindings/input/linux-event-codes.h>
7#include <dt-bindings/pinctrl/rockchip.h>
8#include <dt-bindings/usb/pd.h>
9#include "rk3588s.dtsi"
10
11/ {
12 model = "Indiedroid Nova";
13 compatible = "indiedroid,nova", "rockchip,rk3588s";
14
15 adc-keys-0 {
16 compatible = "adc-keys";
17 io-channel-names = "buttons";
18 io-channels = <&saradc 0>;
19 keyup-threshold-microvolt = <1800000>;
20 poll-interval = <100>;
21
22 button-boot {
23 label = "boot";
24 linux,code = <KEY_PROG1>;
25 press-threshold-microvolt = <18000>;
26 };
27 };
28
29 adc-keys-1 {
30 compatible = "adc-keys";
31 io-channel-names = "buttons";
32 io-channels = <&saradc 1>;
33 keyup-threshold-microvolt = <1800000>;
34 poll-interval = <100>;
35
36 button-recovery {
37 label = "recovery";
38 linux,code = <KEY_PROG2>;
39 press-threshold-microvolt = <18000>;
40 };
41 };
42
43 aliases {
44 mmc0 = &sdhci;
45 mmc1 = &sdmmc;
46 mmc2 = &sdio;
Tom Rini53633a82024-02-29 12:33:36 -050047 };
48
49 chosen {
50 stdout-path = "serial2:1500000n8";
51 };
52
53 sdio_pwrseq: sdio-pwrseq {
54 compatible = "mmc-pwrseq-simple";
55 clock-names = "ext_clock";
56 clocks = <&rtc_hym8563>;
57 pinctrl-0 = <&wifi_enable_h>;
58 pinctrl-names = "default";
59 post-power-on-delay-ms = <200>;
60 reset-gpios = <&gpio0 RK_PC7 GPIO_ACTIVE_LOW>;
61 };
62
63 sound {
64 compatible = "audio-graph-card";
65 label = "rockchip,es8388-codec";
66 widgets = "Microphone", "Mic Jack",
67 "Headphone", "Headphones";
68 routing = "LINPUT2", "Mic Jack",
69 "Headphones", "LOUT1",
70 "Headphones", "ROUT1";
71 dais = <&i2s0_8ch_p0>;
72 };
73
74 vbus5v0_typec: vbus5v0-typec-regulator {
75 compatible = "regulator-fixed";
76 enable-active-high;
77 gpio = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
78 pinctrl-0 = <&typec5v_pwren>;
79 pinctrl-names = "default";
80 regulator-name = "vbus5v0_typec";
81 regulator-min-microvolt = <5000000>;
82 regulator-max-microvolt = <5000000>;
83 vin-supply = <&vcc5v0_usb>;
84 };
85
86 vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
87 compatible = "regulator-fixed";
88 regulator-always-on;
89 regulator-boot-on;
90 regulator-max-microvolt = <1100000>;
91 regulator-min-microvolt = <1100000>;
92 regulator-name = "vcc_1v1_nldo_s3";
93 vin-supply = <&vcc5v0_sys>;
94 };
95
96 /* Regulator is enabled whenever vcc_1v8_s0 is above 1.6v */
97 vcc_3v3_s0: vcc-3v3-s0-regulator {
98 compatible = "regulator-fixed";
99 regulator-always-on;
100 regulator-boot-on;
101 regulator-max-microvolt = <3300000>;
102 regulator-min-microvolt = <3300000>;
103 regulator-name = "vcc_3v3_s0";
104 vin-supply = <&vcc_3v3_s3>;
105
106 regulator-state-mem {
107 regulator-off-in-suspend;
108 };
109 };
110
111 vcc5v0_sys: vcc5v0-sys-regulator {
112 compatible = "regulator-fixed";
113 regulator-always-on;
114 regulator-boot-on;
115 regulator-max-microvolt = <5000000>;
116 regulator-min-microvolt = <5000000>;
117 regulator-name = "vcc5v0_sys";
118 };
119
120 vcc5v0_usb: vcc5v0-usb-regulator {
121 compatible = "regulator-fixed";
122 regulator-always-on;
123 regulator-boot-on;
124 regulator-max-microvolt = <5000000>;
125 regulator-min-microvolt = <5000000>;
126 regulator-name = "vcc5v0_usb";
127 vin-supply = <&vcc5v0_usbdcin>;
128 };
129
130 vcc5v0_usbdcin: vcc5v0-usbdcin-regulator {
131 compatible = "regulator-fixed";
132 regulator-always-on;
133 regulator-boot-on;
134 regulator-max-microvolt = <5000000>;
135 regulator-min-microvolt = <5000000>;
136 regulator-name = "vcc5v0_usbdcin";
137 };
138};
139
140&combphy0_ps {
141 status = "okay";
142};
143
Tom Rini6bb92fc2024-05-20 09:54:58 -0600144&combphy2_psu {
145 status = "okay";
146};
147
Tom Rini53633a82024-02-29 12:33:36 -0500148&cpu_l0 {
149 cpu-supply = <&vdd_cpu_lit_s0>;
150};
151
152&cpu_l1 {
153 cpu-supply = <&vdd_cpu_lit_s0>;
154};
155
156&cpu_l2 {
157 cpu-supply = <&vdd_cpu_lit_s0>;
158};
159
160&cpu_l3 {
161 cpu-supply = <&vdd_cpu_lit_s0>;
162};
163
164&cpu_b0 {
165 cpu-supply = <&vdd_cpu_big0_s0>;
166};
167
168&cpu_b1 {
169 cpu-supply = <&vdd_cpu_big0_s0>;
170};
171
172&cpu_b2 {
173 cpu-supply = <&vdd_cpu_big1_s0>;
174};
175
176&cpu_b3 {
177 cpu-supply = <&vdd_cpu_big1_s0>;
178};
179
180/*
181 * Add labels for each GPIO pin exposed on the 40 pin header. Note that
182 * voltage of each GPIO pin could be either 3.3v or 1.8v (as noted by
183 * label).
184 */
185&gpio0 {
186 gpio-line-names = /* GPIO0 A0-A7 */
187 "", "", "", "",
188 "", "", "", "",
189 /* GPIO0 B0-B7 */
190 "", "", "", "",
191 "", "", "", "",
192 /* GPIO0 C0-C7 */
193 "", "", "", "",
194 "", "", "", "",
195 /* GPIO0 D0-D7 */
196 "HEADER_12_1v8", "", "", "HEADER_24_1v8",
197 "", "", "", "";
198};
199
200&gpio1 {
201 gpio-line-names = /* GPIO1 A0-A7 */
Tom Rini93743d22024-04-01 09:08:13 -0400202 "HEADER_27_3v3", "", "", "",
Tom Rini53633a82024-02-29 12:33:36 -0500203 "HEADER_29_1v8", "", "HEADER_7_1v8", "",
204 /* GPIO1 B0-B7 */
205 "", "HEADER_31_1v8", "HEADER_33_1v8", "",
206 "HEADER_11_1v8", "HEADER_13_1v8", "", "",
207 /* GPIO1 C0-C7 */
Tom Rini93743d22024-04-01 09:08:13 -0400208 "", "HEADER_28_3v3", "", "",
Tom Rini53633a82024-02-29 12:33:36 -0500209 "", "", "", "",
210 /* GPIO1 D0-D7 */
211 "", "", "", "",
212 "", "", "HEADER_5_3v3", "HEADER_3_3v3";
213};
214
215&gpio3 {
216 gpio-line-names = /* GPIO3 A0-A7 */
217 "", "", "", "",
218 "", "", "", "",
219 /* GPIO3 B0-B7 */
220 "HEADER_16_1v8", "HEADER_18_1v8", "", "",
221 "", "", "", "HEADER_19_1v8",
222 /* GPIO3 C0-C7 */
223 "HEADER_21_1v8", "HEADER_23_1v8", "", "HEADER_26_1v8",
224 "HEADER_15_1v8", "HEADER_22_1v8", "", "",
225 /* GPIO3 D0-D7 */
226 "", "", "", "",
227 "", "", "", "";
228};
229
230&gpio4 {
231 gpio-line-names = /* GPIO4 A0-A7 */
Tom Rini93743d22024-04-01 09:08:13 -0400232 "", "", "HEADER_37_3v3", "HEADER_8_3v3",
233 "HEADER_10_3v3", "", "HEADER_32_3v3", "HEADER_35_3v3",
Tom Rini53633a82024-02-29 12:33:36 -0500234 /* GPIO4 B0-B7 */
235 "", "", "", "HEADER_40_3v3",
Tom Rini93743d22024-04-01 09:08:13 -0400236 "HEADER_38_3v3", "HEADER_36_3v3", "", "",
Tom Rini53633a82024-02-29 12:33:36 -0500237 /* GPIO4 C0-C7 */
238 "", "", "", "",
239 "", "", "", "",
240 /* GPIO4 D0-D7 */
241 "", "", "", "",
242 "", "", "", "";
243};
244
245&i2c0 {
246 pinctrl-0 = <&i2c0m2_xfer>;
247 pinctrl-names = "default";
248 status = "okay";
249
250 vdd_cpu_big0_s0: regulator@42 {
251 compatible = "rockchip,rk8602";
252 reg = <0x42>;
253 regulator-always-on;
254 regulator-boot-on;
255 regulator-max-microvolt = <1050000>;
256 regulator-min-microvolt = <550000>;
257 regulator-name = "vdd_cpu_big0_s0";
258 regulator-ramp-delay = <2300>;
259 fcs,suspend-voltage-selector = <1>;
260 vin-supply = <&vcc5v0_sys>;
261
262 regulator-state-mem {
263 regulator-off-in-suspend;
264 };
265 };
266
267 vdd_cpu_big1_s0: regulator@43 {
268 compatible = "rockchip,rk8603", "rockchip,rk8602";
269 reg = <0x43>;
270 regulator-always-on;
271 regulator-boot-on;
272 regulator-max-microvolt = <1050000>;
273 regulator-min-microvolt = <550000>;
274 regulator-name = "vdd_cpu_big1_s0";
275 regulator-ramp-delay = <2300>;
276 fcs,suspend-voltage-selector = <1>;
277 vin-supply = <&vcc5v0_sys>;
278
279 regulator-state-mem {
280 regulator-off-in-suspend;
281 };
282 };
283};
284
285&i2c2 {
286 status = "okay";
287
288 vdd_npu_s0: regulator@42 {
289 compatible = "rockchip,rk8602";
290 reg = <0x42>;
291 regulator-always-on;
292 regulator-boot-on;
293 regulator-max-microvolt = <950000>;
294 regulator-min-microvolt = <550000>;
295 regulator-name = "vdd_npu_s0";
296 regulator-ramp-delay = <2300>;
297 fcs,suspend-voltage-selector = <1>;
298 vin-supply = <&vcc5v0_sys>;
299
300 regulator-state-mem {
301 regulator-off-in-suspend;
302 };
303 };
304};
305
306&i2c6 {
307 pinctrl-0 = <&i2c6m3_xfer>;
308 status = "okay";
309
310 fusb302: typec-portc@22 {
311 compatible = "fcs,fusb302";
312 reg = <0x22>;
313 interrupt-parent = <&gpio0>;
314 interrupts = <RK_PC4 IRQ_TYPE_LEVEL_LOW>;
315 pinctrl-0 = <&usbc0_int>;
316 pinctrl-names = "default";
317 vbus-supply = <&vbus5v0_typec>;
318
319 connector {
320 compatible = "usb-c-connector";
321 data-role = "dual";
322 label = "USB-C";
323 power-role = "dual";
324 try-power-role = "sink";
325 source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
326 sink-pdos = <PDO_FIXED(5000, 1000, PDO_FIXED_USB_COMM)>;
327 op-sink-microwatt = <1000000>;
328 };
329 };
330
331 rtc_hym8563: rtc@51 {
332 compatible = "haoyu,hym8563";
333 reg = <0x51>;
334 #clock-cells = <0>;
335 clock-output-names = "hym8563";
336 interrupt-parent = <&gpio0>;
337 interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
338 pinctrl-0 = <&hym8563_int>;
339 pinctrl-names = "default";
340 wakeup-source;
341 };
342};
343
344&i2c7 {
345 pinctrl-0 = <&i2c7m0_xfer>;
346 status = "okay";
347
348 es8388: audio-codec@11 {
349 compatible = "everest,es8388";
350 reg = <0x11>;
351 assigned-clock-rates = <12288000>;
352 assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
353 AVDD-supply = <&vcc_3v3_s3>;
354 clock-names = "mclk";
355 clocks = <&cru I2S0_8CH_MCLKOUT>;
356 DVDD-supply = <&vcc_1v8_s3>;
357 HPVDD-supply = <&vcc_3v3_s3>;
358 PVDD-supply = <&vcc_1v8_s3>;
359 #sound-dai-cells = <0>;
360
361 port {
362 es8388_p0_0: endpoint {
363 remote-endpoint = <&i2s0_8ch_p0_0>;
364 };
365 };
366 };
367};
368
369&i2s0_8ch {
370 pinctrl-names = "default";
371 pinctrl-0 = <&i2s0_lrck
372 &i2s0_mclk
373 &i2s0_sclk
374 &i2s0_sdi0
375 &i2s0_sdo0>;
376 status = "okay";
377
378 i2s0_8ch_p0: port {
379 i2s0_8ch_p0_0: endpoint {
380 dai-format = "i2s";
381 mclk-fs = <256>;
382 remote-endpoint = <&es8388_p0_0>;
383 };
384 };
385};
386
387&pcie2x1l2 {
388 pinctrl-0 = <&rtl8111_perstb>;
389 pinctrl-names = "default";
390 status = "okay";
391};
392
393&pinctrl {
394 bluetooth-pins {
395 bt_reset: bt-reset {
396 rockchip,pins =
397 <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
398 };
399
400 bt_wake_dev: bt-wake-dev {
401 rockchip,pins =
402 <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
403 };
404
405 bt_wake_host: bt-wake-host {
406 rockchip,pins =
407 <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_down>;
408 };
409 };
410
411 ethernet-pins {
412 rtl8111_perstb: rtl8111-perstb {
413 rockchip,pins = <3 RK_PD1 RK_FUNC_GPIO &pcfg_pull_up>;
414 };
415 };
416
417 hym8563 {
418
419 hym8563_int: hym8563-int {
420 rockchip,pins =
421 <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
422 };
423 };
424
425 sdio-pwrseq {
426 wifi_enable_h: wifi-enable-h {
427 rockchip,pins =
428 <0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
429 };
430 };
431
432 usb-typec {
433 usbc0_int: usbc0-int {
434 rockchip,pins =
435 <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;
436 };
437
438 typec5v_pwren: typec5v-pwren {
439 rockchip,pins =
440 <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
441 };
442 };
443};
444
445&saradc {
446 vref-supply = <&vcca_1v8_s0>;
447 status = "okay";
448};
449
450/* HS400 modes seemed to cause io errors. */
451&sdhci {
452 bus-width = <8>;
453 no-mmc-hs400;
454 no-sd;
455 no-sdio;
456 non-removable;
457 vmmc-supply = <&vcc_3v3_s0>;
458 vqmmc-supply = <&vcc_1v8_s3>;
459 status = "okay";
460};
461
462&sdio {
463 bus-width = <4>;
464 cap-sd-highspeed;
465 cap-sdio-irq;
466 disable-wp;
467 keep-power-in-suspend;
468 max-frequency = <100000000>;
469 mmc-pwrseq = <&sdio_pwrseq>;
470 no-mmc;
471 no-sd;
472 non-removable;
473 sd-uhs-sdr104;
474 vmmc-supply = <&vcc_3v3_s3>;
475 vqmmc-supply = <&vcc_1v8_s3>;
476 status = "okay";
477};
478
479&sdmmc {
480 bus-width = <4>;
481 cap-mmc-highspeed;
482 cap-sd-highspeed;
483 disable-wp;
484 no-sdio;
485 no-mmc;
486 sd-uhs-sdr104;
487 vmmc-supply = <&vcc_3v3_s3>;
488 vqmmc-supply = <&vccio_sd_s0>;
489 status = "okay";
490};
491
492&spi2 {
493 #address-cells = <1>;
494 assigned-clocks = <&cru CLK_SPI2>;
495 assigned-clock-rates = <200000000>;
496 num-cs = <1>;
497 pinctrl-0 = <&spi2m2_pins>, <&spi2m2_cs0>;
498 pinctrl-names = "default";
499 #size-cells = <0>;
500 status = "okay";
501
502 pmic@0 {
503 compatible = "rockchip,rk806";
504 reg = <0x0>;
505 #gpio-cells = <2>;
506 gpio-controller;
507 interrupt-parent = <&gpio0>;
508 interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>;
509 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
510 <&rk806_dvs2_null>, <&rk806_dvs3_null>;
511 pinctrl-names = "default";
512 spi-max-frequency = <1000000>;
513
514 vcc1-supply = <&vcc5v0_sys>;
515 vcc2-supply = <&vcc5v0_sys>;
516 vcc3-supply = <&vcc5v0_sys>;
517 vcc4-supply = <&vcc5v0_sys>;
518 vcc5-supply = <&vcc5v0_sys>;
519 vcc6-supply = <&vcc5v0_sys>;
520 vcc7-supply = <&vcc5v0_sys>;
521 vcc8-supply = <&vcc5v0_sys>;
522 vcc9-supply = <&vcc5v0_sys>;
523 vcc10-supply = <&vcc5v0_sys>;
524 vcc11-supply = <&vcc_2v0_pldo_s3>;
525 vcc12-supply = <&vcc5v0_sys>;
526 vcc13-supply = <&vcc_1v1_nldo_s3>;
527 vcc14-supply = <&vcc_1v1_nldo_s3>;
528 vcca-supply = <&vcc5v0_sys>;
529
530 rk806_dvs1_null: dvs1-null-pins {
531 pins = "gpio_pwrctrl2";
532 function = "pin_fun0";
533 };
534
535 rk806_dvs2_null: dvs2-null-pins {
536 pins = "gpio_pwrctrl2";
537 function = "pin_fun0";
538 };
539
540 rk806_dvs3_null: dvs3-null-pins {
541 pins = "gpio_pwrctrl3";
542 function = "pin_fun0";
543 };
544
545 regulators {
546 vdd_gpu_s0: dcdc-reg1 {
547 regulator-boot-on;
548 regulator-enable-ramp-delay = <400>;
549 regulator-max-microvolt = <950000>;
550 regulator-min-microvolt = <550000>;
551 regulator-name = "vdd_gpu_s0";
552 regulator-ramp-delay = <12500>;
553 regulator-state-mem {
554 regulator-off-in-suspend;
555 };
556 };
557
558 vdd_cpu_lit_s0: dcdc-reg2 {
559 regulator-always-on;
560 regulator-boot-on;
561 regulator-max-microvolt = <950000>;
562 regulator-min-microvolt = <550000>;
563 regulator-ramp-delay = <12500>;
564 regulator-name = "vdd_cpu_lit_s0";
565 regulator-state-mem {
566 regulator-off-in-suspend;
567 };
568 };
569
570 vdd_logic_s0: dcdc-reg3 {
571 regulator-always-on;
572 regulator-boot-on;
573 regulator-max-microvolt = <750000>;
574 regulator-min-microvolt = <675000>;
575 regulator-name = "vdd_logic_s0";
576 regulator-ramp-delay = <12500>;
577 regulator-state-mem {
578 regulator-on-in-suspend;
579 regulator-suspend-microvolt = <750000>;
580 };
581 };
582
583 vdd_vdenc_s0: dcdc-reg4 {
584 regulator-always-on;
585 regulator-boot-on;
586 regulator-max-microvolt = <950000>;
587 regulator-min-microvolt = <550000>;
588 regulator-name = "vdd_vdenc_s0";
589 regulator-ramp-delay = <12500>;
590 regulator-state-mem {
591 regulator-off-in-suspend;
592 };
593 };
594
595 vdd_ddr_s0: dcdc-reg5 {
596 regulator-always-on;
597 regulator-boot-on;
598 regulator-min-microvolt = <750000>;
599 regulator-max-microvolt = <850000>;
600 regulator-ramp-delay = <12500>;
601 regulator-name = "vdd_ddr_s0";
602 regulator-state-mem {
603 regulator-off-in-suspend;
604 regulator-suspend-microvolt = <850000>;
605 };
606 };
607
608 vdd2_ddr_s3: dcdc-reg6 {
609 regulator-always-on;
610 regulator-boot-on;
611 regulator-max-microvolt = <1100000>;
612 regulator-min-microvolt = <1100000>;
613 regulator-name = "vdd2_ddr_s3";
614 regulator-state-mem {
615 regulator-on-in-suspend;
616 };
617 };
618
619 vcc_2v0_pldo_s3: dcdc-reg7 {
620 regulator-always-on;
621 regulator-boot-on;
622 regulator-max-microvolt = <2000000>;
623 regulator-min-microvolt = <2000000>;
624 regulator-name = "vdd_2v0_pldo_s3";
625 regulator-state-mem {
626 regulator-on-in-suspend;
627 regulator-suspend-microvolt = <2000000>;
628 };
629 };
630
631 vcc_3v3_s3: dcdc-reg8 {
632 regulator-always-on;
633 regulator-boot-on;
634 regulator-max-microvolt = <3300000>;
635 regulator-min-microvolt = <3300000>;
636 regulator-name = "vcc_3v3_s3";
637 regulator-state-mem {
638 regulator-on-in-suspend;
639 regulator-suspend-microvolt = <3300000>;
640 };
641 };
642
643 vddq_ddr_s0: dcdc-reg9 {
644 regulator-always-on;
645 regulator-boot-on;
646 regulator-max-microvolt = <600000>;
647 regulator-min-microvolt = <600000>;
648 regulator-name = "vddq_ddr_s0";
649 regulator-state-mem {
650 regulator-off-in-suspend;
651 };
652 };
653
654 vcc_1v8_s3: dcdc-reg10 {
655 regulator-always-on;
656 regulator-boot-on;
657 regulator-max-microvolt = <1800000>;
658 regulator-min-microvolt = <1800000>;
659 regulator-name = "vcc_1v8_s3";
660 regulator-state-mem {
661 regulator-on-in-suspend;
662 regulator-suspend-microvolt = <1800000>;
663 };
664 };
665
666 vcc_1v8_s0: pldo-reg1 {
667 regulator-always-on;
668 regulator-boot-on;
669 regulator-max-microvolt = <1800000>;
670 regulator-min-microvolt = <1800000>;
671 regulator-name = "vcc_1v8_s0";
672 regulator-state-mem {
673 regulator-off-in-suspend;
674 };
675 };
676
677 vcca_1v8_s0: pldo-reg2 {
678 regulator-always-on;
679 regulator-boot-on;
680 regulator-max-microvolt = <1800000>;
681 regulator-min-microvolt = <1800000>;
682 regulator-name = "vcca_1v8_s0";
683 regulator-state-mem {
684 regulator-off-in-suspend;
685 regulator-suspend-microvolt = <1800000>;
686 };
687 };
688
689 vdda_1v2_s0: pldo-reg3 {
690 regulator-always-on;
691 regulator-boot-on;
692 regulator-max-microvolt = <1200000>;
693 regulator-min-microvolt = <1200000>;
694 regulator-name = "vdda_1v2_s0";
695 regulator-state-mem {
696 regulator-off-in-suspend;
697 };
698 };
699
700 vcca_3v3_s0: pldo-reg4 {
701 regulator-always-on;
702 regulator-boot-on;
703 regulator-max-microvolt = <3300000>;
704 regulator-min-microvolt = <3300000>;
705 regulator-name = "vcca_3v3_s0";
706 regulator-state-mem {
707 regulator-off-in-suspend;
708 };
709 };
710
711 vccio_sd_s0: pldo-reg5 {
712 regulator-always-on;
713 regulator-boot-on;
714 regulator-max-microvolt = <3300000>;
715 regulator-min-microvolt = <1800000>;
716 regulator-name = "vccio_sd_s0";
717 regulator-state-mem {
718 regulator-off-in-suspend;
719 };
720 };
721
722 vcc_1v8_s3_pldo6: pldo-reg6 {
723 regulator-always-on;
724 regulator-boot-on;
725 regulator-max-microvolt = <1800000>;
726 regulator-min-microvolt = <1800000>;
727 regulator-name = "vcc_1v8_s3_pldo6";
728 regulator-state-mem {
729 regulator-on-in-suspend;
730 regulator-suspend-microvolt = <1800000>;
731 };
732 };
733
734 vdd_0v75_s3: nldo-reg1 {
735 regulator-always-on;
736 regulator-boot-on;
737 regulator-max-microvolt = <750000>;
738 regulator-min-microvolt = <750000>;
739 regulator-name = "vdd_0v75_s3";
740 regulator-state-mem {
741 regulator-on-in-suspend;
742 regulator-suspend-microvolt = <750000>;
743 };
744 };
745
746 vdda_ddr_pll_s0: nldo-reg2 {
747 regulator-always-on;
748 regulator-boot-on;
749 regulator-max-microvolt = <850000>;
750 regulator-min-microvolt = <850000>;
751 regulator-name = "vdda_ddr_pll_s0";
752 regulator-state-mem {
753 regulator-off-in-suspend;
754 regulator-suspend-microvolt = <850000>;
755 };
756 };
757
758 avdd_0v75_s0: nldo-reg3 {
759 regulator-always-on;
760 regulator-boot-on;
761 regulator-max-microvolt = <750000>;
762 regulator-min-microvolt = <750000>;
763 regulator-name = "avdd_0v75_s0";
764 regulator-state-mem {
765 regulator-off-in-suspend;
766 };
767 };
768
769 vdda_0v85_s0: nldo-reg4 {
770 regulator-always-on;
771 regulator-boot-on;
772 regulator-min-microvolt = <850000>;
773 regulator-max-microvolt = <850000>;
774 regulator-name = "vdda_0v85_s0";
775 regulator-state-mem {
776 regulator-off-in-suspend;
777 };
778 };
779
780 /* Schematics show not in use */
781 nldo-reg5 {
782 };
783 };
784 };
785};
786
787&tsadc {
788 status = "okay";
789};
790
791&u2phy2 {
792 status = "okay";
793};
794
795&u2phy2_host {
796 phy-supply = <&vcc5v0_usb>;
797 status = "okay";
798};
799
800&u2phy3 {
801 status = "okay";
802};
803
804&u2phy3_host {
805 phy-supply = <&vcc5v0_usb>;
806 status = "okay";
807};
808
809&uart2 {
810 pinctrl-0 = <&uart2m0_xfer>;
811 status = "okay";
812};
813
814/* DMA seems to interfere with bluetooth device normal operation. */
815&uart9 {
816 pinctrl-0 = <&uart9m2_xfer>, <&uart9m2_ctsn>, <&uart9m2_rtsn>;
817 pinctrl-names = "default";
818 /delete-property/ dma-names;
819 /delete-property/ dmas;
820 uart-has-rtscts;
821 status = "okay";
822
823 bluetooth {
824 compatible = "realtek,rtl8821cs-bt",
825 "realtek,rtl8723bs-bt";
826 device-wake-gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
827 enable-gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>;
828 host-wake-gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
829 pinctrl-0 = <&bt_reset>, <&bt_wake_dev>, <&bt_wake_host>;
830 pinctrl-names = "default";
831 };
832};
833
834&usb_host0_ehci {
835 status = "okay";
836};
837
838&usb_host0_ohci {
839 status = "okay";
840};
841
842&usb_host1_ehci {
843 status = "okay";
844};
845
846&usb_host1_ohci {
847 status = "okay";
848};
Tom Rini6bb92fc2024-05-20 09:54:58 -0600849
850&usb_host2_xhci {
851 status = "okay";
852};