1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
5 #include <dt-bindings/gpio/gpio.h>
6 #include <dt-bindings/leds/common.h>
10 model = "Radxa ROCK 5 Model B";
11 compatible = "radxa,rock-5b", "rockchip,rk3588";
21 stdout-path = "serial2:1500000n8";
25 compatible = "audio-graph-card";
26 label = "rk3588-es8316";
28 widgets = "Microphone", "Mic Jack",
29 "Headphone", "Headphones";
31 routing = "MIC2", "Mic Jack",
35 dais = <&i2s0_8ch_p0>;
36 hp-det-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>;
37 pinctrl-names = "default";
38 pinctrl-0 = <&hp_detect>;
42 compatible = "gpio-leds";
43 pinctrl-names = "default";
44 pinctrl-0 = <&led_rgb_b>;
47 function = LED_FUNCTION_STATUS;
48 color = <LED_COLOR_ID_BLUE>;
49 gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
50 linux,default-trigger = "heartbeat";
55 compatible = "pwm-fan";
56 cooling-levels = <0 95 145 195 255>;
57 fan-supply = <&vcc5v0_sys>;
58 pwms = <&pwm1 0 50000 0>;
62 vcc3v3_pcie2x1l0: vcc3v3-pcie2x1l0-regulator {
63 compatible = "regulator-fixed";
65 gpios = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
66 pinctrl-names = "default";
67 pinctrl-0 = <&pcie2_0_vcc3v3_en>;
68 regulator-name = "vcc3v3_pcie2x1l0";
71 regulator-min-microvolt = <3300000>;
72 regulator-max-microvolt = <3300000>;
73 startup-delay-us = <50000>;
74 vin-supply = <&vcc5v0_sys>;
77 vcc3v3_pcie2x1l2: vcc3v3-pcie2x1l2-regulator {
78 compatible = "regulator-fixed";
79 regulator-name = "vcc3v3_pcie2x1l2";
80 regulator-min-microvolt = <3300000>;
81 regulator-max-microvolt = <3300000>;
82 startup-delay-us = <5000>;
83 vin-supply = <&vcc_3v3_s3>;
86 vcc3v3_pcie30: vcc3v3-pcie30-regulator {
87 compatible = "regulator-fixed";
89 gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>;
90 pinctrl-names = "default";
91 pinctrl-0 = <&pcie3_vcc3v3_en>;
92 regulator-name = "vcc3v3_pcie30";
93 regulator-min-microvolt = <3300000>;
94 regulator-max-microvolt = <3300000>;
95 startup-delay-us = <5000>;
96 vin-supply = <&vcc5v0_sys>;
99 vcc5v0_host: vcc5v0-host-regulator {
100 compatible = "regulator-fixed";
101 regulator-name = "vcc5v0_host";
104 regulator-min-microvolt = <5000000>;
105 regulator-max-microvolt = <5000000>;
107 gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>;
108 pinctrl-names = "default";
109 pinctrl-0 = <&vcc5v0_host_en>;
110 vin-supply = <&vcc5v0_sys>;
113 vcc5v0_sys: vcc5v0-sys-regulator {
114 compatible = "regulator-fixed";
115 regulator-name = "vcc5v0_sys";
118 regulator-min-microvolt = <5000000>;
119 regulator-max-microvolt = <5000000>;
122 vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
123 compatible = "regulator-fixed";
124 regulator-name = "vcc_1v1_nldo_s3";
127 regulator-min-microvolt = <1100000>;
128 regulator-max-microvolt = <1100000>;
129 vin-supply = <&vcc5v0_sys>;
142 cpu-supply = <&vdd_cpu_big0_s0>;
146 cpu-supply = <&vdd_cpu_big0_s0>;
150 cpu-supply = <&vdd_cpu_big1_s0>;
154 cpu-supply = <&vdd_cpu_big1_s0>;
158 cpu-supply = <&vdd_cpu_lit_s0>;
162 cpu-supply = <&vdd_cpu_lit_s0>;
166 cpu-supply = <&vdd_cpu_lit_s0>;
170 cpu-supply = <&vdd_cpu_lit_s0>;
174 pinctrl-names = "default";
175 pinctrl-0 = <&i2c0m2_xfer>;
178 vdd_cpu_big0_s0: regulator@42 {
179 compatible = "rockchip,rk8602";
181 fcs,suspend-voltage-selector = <1>;
182 regulator-name = "vdd_cpu_big0_s0";
185 regulator-min-microvolt = <550000>;
186 regulator-max-microvolt = <1050000>;
187 regulator-ramp-delay = <2300>;
188 vin-supply = <&vcc5v0_sys>;
190 regulator-state-mem {
191 regulator-off-in-suspend;
195 vdd_cpu_big1_s0: regulator@43 {
196 compatible = "rockchip,rk8603", "rockchip,rk8602";
198 fcs,suspend-voltage-selector = <1>;
199 regulator-name = "vdd_cpu_big1_s0";
202 regulator-min-microvolt = <550000>;
203 regulator-max-microvolt = <1050000>;
204 regulator-ramp-delay = <2300>;
205 vin-supply = <&vcc5v0_sys>;
207 regulator-state-mem {
208 regulator-off-in-suspend;
217 compatible = "haoyu,hym8563";
220 clock-output-names = "hym8563";
221 pinctrl-names = "default";
222 pinctrl-0 = <&hym8563_int>;
223 interrupt-parent = <&gpio0>;
224 interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
232 es8316: audio-codec@11 {
233 compatible = "everest,es8316";
235 clocks = <&cru I2S0_8CH_MCLKOUT>;
236 clock-names = "mclk";
237 assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
238 assigned-clock-rates = <12288000>;
239 #sound-dai-cells = <0>;
242 es8316_p0_0: endpoint {
243 remote-endpoint = <&i2s0_8ch_p0_0>;
250 pinctrl-names = "default";
251 pinctrl-0 = <&i2s0_lrck
259 i2s0_8ch_p0_0: endpoint {
262 remote-endpoint = <&es8316_p0_0>;
268 pinctrl-names = "default";
269 pinctrl-0 = <&pcie2_0_rst>;
270 reset-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
271 vpcie3v3-supply = <&vcc3v3_pcie2x1l0>;
276 pinctrl-names = "default";
277 pinctrl-0 = <&pcie2_2_rst>;
278 reset-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>;
279 vpcie3v3-supply = <&vcc3v3_pcie2x1l2>;
288 pinctrl-names = "default";
289 pinctrl-0 = <&pcie3_rst>;
290 reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
291 vpcie3v3-supply = <&vcc3v3_pcie30>;
297 hym8563_int: hym8563-int {
298 rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
303 led_rgb_b: led-rgb-b {
304 rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
309 hp_detect: hp-detect {
310 rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
315 pcie2_0_rst: pcie2-0-rst {
316 rockchip,pins = <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
319 pcie2_0_vcc3v3_en: pcie2-0-vcc-en {
320 rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
323 pcie2_2_rst: pcie2-2-rst {
324 rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
329 pcie3_rst: pcie3-rst {
330 rockchip,pins = <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
333 pcie3_vcc3v3_en: pcie3-vcc3v3-en {
334 rockchip,pins = <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
339 vcc5v0_host_en: vcc5v0-host-en {
340 rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
350 vref-supply = <&avcc_1v8_s0>;
360 mmc-hs400-enhanced-strobe;
365 max-frequency = <200000000>;
371 cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
374 vmmc-supply = <&vcc_3v3_s3>;
375 vqmmc-supply = <&vccio_sd_s0>;
380 max-frequency = <200000000>;
387 keep-power-in-suspend;
393 vmmc-supply = <&vcc3v3_pcie2x1l0>;
394 vqmmc-supply = <&vcc_1v8_s3>;
395 pinctrl-names = "default";
396 pinctrl-0 = <&sdiom0_pins>;
401 pinctrl-names = "default";
402 pinctrl-0 = <&uart6m1_xfer &uart6m1_ctsn &uart6m1_rtsn>;
408 assigned-clocks = <&cru CLK_SPI2>;
409 assigned-clock-rates = <200000000>;
410 pinctrl-names = "default";
411 pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
415 compatible = "rockchip,rk806";
416 spi-max-frequency = <1000000>;
419 interrupt-parent = <&gpio0>;
420 interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
422 pinctrl-names = "default";
423 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
424 <&rk806_dvs2_null>, <&rk806_dvs3_null>;
426 vcc1-supply = <&vcc5v0_sys>;
427 vcc2-supply = <&vcc5v0_sys>;
428 vcc3-supply = <&vcc5v0_sys>;
429 vcc4-supply = <&vcc5v0_sys>;
430 vcc5-supply = <&vcc5v0_sys>;
431 vcc6-supply = <&vcc5v0_sys>;
432 vcc7-supply = <&vcc5v0_sys>;
433 vcc8-supply = <&vcc5v0_sys>;
434 vcc9-supply = <&vcc5v0_sys>;
435 vcc10-supply = <&vcc5v0_sys>;
436 vcc11-supply = <&vcc_2v0_pldo_s3>;
437 vcc12-supply = <&vcc5v0_sys>;
438 vcc13-supply = <&vcc_1v1_nldo_s3>;
439 vcc14-supply = <&vcc_1v1_nldo_s3>;
440 vcca-supply = <&vcc5v0_sys>;
445 rk806_dvs1_null: dvs1-null-pins {
446 pins = "gpio_pwrctrl2";
447 function = "pin_fun0";
450 rk806_dvs2_null: dvs2-null-pins {
451 pins = "gpio_pwrctrl2";
452 function = "pin_fun0";
455 rk806_dvs3_null: dvs3-null-pins {
456 pins = "gpio_pwrctrl3";
457 function = "pin_fun0";
461 vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
463 regulator-min-microvolt = <550000>;
464 regulator-max-microvolt = <950000>;
465 regulator-ramp-delay = <12500>;
466 regulator-name = "vdd_gpu_s0";
467 regulator-enable-ramp-delay = <400>;
469 regulator-state-mem {
470 regulator-off-in-suspend;
474 vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
477 regulator-min-microvolt = <550000>;
478 regulator-max-microvolt = <950000>;
479 regulator-ramp-delay = <12500>;
480 regulator-name = "vdd_cpu_lit_s0";
482 regulator-state-mem {
483 regulator-off-in-suspend;
487 vdd_log_s0: dcdc-reg3 {
490 regulator-min-microvolt = <675000>;
491 regulator-max-microvolt = <750000>;
492 regulator-ramp-delay = <12500>;
493 regulator-name = "vdd_log_s0";
495 regulator-state-mem {
496 regulator-off-in-suspend;
497 regulator-suspend-microvolt = <750000>;
501 vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
504 regulator-min-microvolt = <550000>;
505 regulator-max-microvolt = <950000>;
506 regulator-ramp-delay = <12500>;
507 regulator-name = "vdd_vdenc_s0";
509 regulator-state-mem {
510 regulator-off-in-suspend;
514 vdd_ddr_s0: dcdc-reg5 {
517 regulator-min-microvolt = <675000>;
518 regulator-max-microvolt = <900000>;
519 regulator-ramp-delay = <12500>;
520 regulator-name = "vdd_ddr_s0";
522 regulator-state-mem {
523 regulator-off-in-suspend;
524 regulator-suspend-microvolt = <850000>;
528 vdd2_ddr_s3: dcdc-reg6 {
531 regulator-name = "vdd2_ddr_s3";
533 regulator-state-mem {
534 regulator-on-in-suspend;
538 vcc_2v0_pldo_s3: dcdc-reg7 {
541 regulator-min-microvolt = <2000000>;
542 regulator-max-microvolt = <2000000>;
543 regulator-ramp-delay = <12500>;
544 regulator-name = "vdd_2v0_pldo_s3";
546 regulator-state-mem {
547 regulator-on-in-suspend;
548 regulator-suspend-microvolt = <2000000>;
552 vcc_3v3_s3: dcdc-reg8 {
555 regulator-min-microvolt = <3300000>;
556 regulator-max-microvolt = <3300000>;
557 regulator-name = "vcc_3v3_s3";
559 regulator-state-mem {
560 regulator-on-in-suspend;
561 regulator-suspend-microvolt = <3300000>;
565 vddq_ddr_s0: dcdc-reg9 {
568 regulator-name = "vddq_ddr_s0";
570 regulator-state-mem {
571 regulator-off-in-suspend;
575 vcc_1v8_s3: dcdc-reg10 {
578 regulator-min-microvolt = <1800000>;
579 regulator-max-microvolt = <1800000>;
580 regulator-name = "vcc_1v8_s3";
582 regulator-state-mem {
583 regulator-on-in-suspend;
584 regulator-suspend-microvolt = <1800000>;
588 avcc_1v8_s0: pldo-reg1 {
591 regulator-min-microvolt = <1800000>;
592 regulator-max-microvolt = <1800000>;
593 regulator-name = "avcc_1v8_s0";
595 regulator-state-mem {
596 regulator-off-in-suspend;
600 vcc_1v8_s0: pldo-reg2 {
603 regulator-min-microvolt = <1800000>;
604 regulator-max-microvolt = <1800000>;
605 regulator-name = "vcc_1v8_s0";
607 regulator-state-mem {
608 regulator-off-in-suspend;
609 regulator-suspend-microvolt = <1800000>;
613 avdd_1v2_s0: pldo-reg3 {
616 regulator-min-microvolt = <1200000>;
617 regulator-max-microvolt = <1200000>;
618 regulator-name = "avdd_1v2_s0";
620 regulator-state-mem {
621 regulator-off-in-suspend;
625 vcc_3v3_s0: pldo-reg4 {
628 regulator-min-microvolt = <3300000>;
629 regulator-max-microvolt = <3300000>;
630 regulator-ramp-delay = <12500>;
631 regulator-name = "vcc_3v3_s0";
633 regulator-state-mem {
634 regulator-off-in-suspend;
638 vccio_sd_s0: pldo-reg5 {
641 regulator-min-microvolt = <1800000>;
642 regulator-max-microvolt = <3300000>;
643 regulator-ramp-delay = <12500>;
644 regulator-name = "vccio_sd_s0";
646 regulator-state-mem {
647 regulator-off-in-suspend;
651 pldo6_s3: pldo-reg6 {
654 regulator-min-microvolt = <1800000>;
655 regulator-max-microvolt = <1800000>;
656 regulator-name = "pldo6_s3";
658 regulator-state-mem {
659 regulator-on-in-suspend;
660 regulator-suspend-microvolt = <1800000>;
664 vdd_0v75_s3: nldo-reg1 {
667 regulator-min-microvolt = <750000>;
668 regulator-max-microvolt = <750000>;
669 regulator-name = "vdd_0v75_s3";
671 regulator-state-mem {
672 regulator-on-in-suspend;
673 regulator-suspend-microvolt = <750000>;
677 vdd_ddr_pll_s0: nldo-reg2 {
680 regulator-min-microvolt = <850000>;
681 regulator-max-microvolt = <850000>;
682 regulator-name = "vdd_ddr_pll_s0";
684 regulator-state-mem {
685 regulator-off-in-suspend;
686 regulator-suspend-microvolt = <850000>;
690 avdd_0v75_s0: nldo-reg3 {
693 regulator-min-microvolt = <750000>;
694 regulator-max-microvolt = <750000>;
695 regulator-name = "avdd_0v75_s0";
697 regulator-state-mem {
698 regulator-off-in-suspend;
702 vdd_0v85_s0: nldo-reg4 {
705 regulator-min-microvolt = <850000>;
706 regulator-max-microvolt = <850000>;
707 regulator-name = "vdd_0v85_s0";
709 regulator-state-mem {
710 regulator-off-in-suspend;
714 vdd_0v75_s0: nldo-reg5 {
717 regulator-min-microvolt = <750000>;
718 regulator-max-microvolt = <750000>;
719 regulator-name = "vdd_0v75_s0";
721 regulator-state-mem {
722 regulator-off-in-suspend;
730 pinctrl-0 = <&uart2m0_xfer>;
739 /* connected to USB hub, which is powered by vcc5v0_sys */
740 phy-supply = <&vcc5v0_sys>;
749 phy-supply = <&vcc5v0_host>;