1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2025 FriendlyElec Computer Tech. Co., Ltd. 4 * Copyright (c) 2025 John Clark <inindev@gmail.com> 5 */ 6 7/dts-v1/; 8 9#include <dt-bindings/gpio/gpio.h> 10#include <dt-bindings/input/input.h> 11#include <dt-bindings/leds/common.h> 12#include <dt-bindings/pinctrl/rockchip.h> 13#include <dt-bindings/pwm/pwm.h> 14#include <dt-bindings/soc/rockchip,vop2.h> 15#include <dt-bindings/usb/pd.h> 16#include "rk3576.dtsi" 17 18/ { 19 model = "FriendlyElec NanoPi M5"; 20 compatible = "friendlyarm,nanopi-m5", "rockchip,rk3576"; 21 22 aliases { 23 ethernet0 = &gmac0; 24 ethernet1 = &gmac1; 25 mmc0 = &sdmmc; 26 }; 27 28 chosen { 29 stdout-path = "serial0:1500000n8"; 30 }; 31 32 hdmi-con { 33 compatible = "hdmi-connector"; 34 hdmi-pwr-supply = <&vcc5v_hdmi_tx>; 35 type = "a"; 36 37 port { 38 hdmi_con_in: endpoint { 39 remote-endpoint = <&hdmi_out_con>; 40 }; 41 }; 42 }; 43 44 keys { 45 compatible = "gpio-keys"; 46 47 usr_button: key-1 { 48 debounce-interval = <50>; 49 gpios = <&gpio1 RK_PA0 GPIO_ACTIVE_LOW>; 50 label = "user"; 51 linux,code = <BTN_1>; 52 pinctrl-names = "default"; 53 pinctrl-0 = <&usr_button_l>; 54 wakeup-source; 55 }; 56 }; 57 58 leds { 59 compatible = "gpio-leds"; 60 61 led_sys: led-0 { 62 color = <LED_COLOR_ID_RED>; 63 function = LED_FUNCTION_HEARTBEAT; 64 gpios = <&gpio2 RK_PB3 GPIO_ACTIVE_HIGH>; 65 label = "sys"; 66 linux,default-trigger = "heartbeat"; 67 pinctrl-names = "default"; 68 pinctrl-0 = <&led_sys_h>; 69 }; 70 71 led1: led-1 { 72 color = <LED_COLOR_ID_GREEN>; 73 function = LED_FUNCTION_LAN; 74 gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>; 75 label = "led1"; 76 linux,default-trigger = "netdev"; 77 pinctrl-names = "default"; 78 pinctrl-0 = <&led1_h>; 79 }; 80 81 led2: led-2 { 82 color = <LED_COLOR_ID_GREEN>; 83 function = LED_FUNCTION_LAN; 84 gpios = <&gpio2 RK_PB0 GPIO_ACTIVE_HIGH>; 85 label = "led2"; 86 linux,default-trigger = "netdev"; 87 pinctrl-names = "default"; 88 pinctrl-0 = <&led2_h>; 89 }; 90 }; 91 92 usb3_port2_5v: regulator-usb3-port2-5v { 93 compatible = "regulator-fixed"; 94 enable-active-high; 95 gpios = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>; 96 pinctrl-names = "default"; 97 pinctrl-0 = <&usb3_host_pwren_h>; 98 regulator-min-microvolt = <5000000>; 99 regulator-max-microvolt = <5000000>; 100 regulator-name = "usb3_port2_5v"; 101 vin-supply = <&vcc5v0_sys_s5>; 102 }; 103 104 vcc12v_dcin: regulator-vcc12v-dcin { 105 compatible = "regulator-fixed"; 106 regulator-always-on; 107 regulator-boot-on; 108 regulator-min-microvolt = <12000000>; 109 regulator-max-microvolt = <12000000>; 110 regulator-name = "vcc12v_dcin"; 111 }; 112 113 vcc1v2_ufs_vccq: regulator-vcc1v2-ufs-vccq { 114 compatible = "regulator-fixed"; 115 regulator-min-microvolt = <1200000>; 116 regulator-max-microvolt = <1200000>; 117 regulator-name = "vcc1v2_ufs_vccq"; 118 vin-supply = <&vcc5v0_sys_s5>; 119 }; 120 121 vcc1v8_ufs_vccq2: regulator-vcc1v8-ufs-vccq2 { 122 compatible = "regulator-fixed"; 123 regulator-min-microvolt = <1800000>; 124 regulator-max-microvolt = <1800000>; 125 regulator-name = "vcc1v8_ufs_vccq2"; 126 vin-supply = <&vcc_1v8_s3>; 127 }; 128 129 vcc3v3_m2_keym: regulator-vcc3v3-m2-keym { 130 compatible = "regulator-fixed"; 131 enable-active-high; 132 gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_HIGH>; 133 pinctrl-names = "default"; 134 pinctrl-0 = <&pcie0_pwren_h>; 135 regulator-min-microvolt = <3300000>; 136 regulator-max-microvolt = <3300000>; 137 regulator-name = "vcc3v3_m2_keym"; 138 vin-supply = <&vcc5v0_sys_s5>; 139 }; 140 141 vcc3v3_sd_s0: regulator-vcc3v3-sd-s0 { 142 compatible = "regulator-fixed"; 143 enable-active-high; 144 gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>; 145 pinctrl-names = "default"; 146 pinctrl-0 = <&sdmmc0_pwren_h>; 147 regulator-boot-on; 148 regulator-min-microvolt = <3300000>; 149 regulator-max-microvolt = <3300000>; 150 regulator-name = "vcc3v3_sd_s0"; 151 vin-supply = <&vcc_3v3_s3>; 152 }; 153 154 vcc5v0_sys_s5: regulator-vcc5v0-sys-s5 { 155 compatible = "regulator-fixed"; 156 regulator-always-on; 157 regulator-boot-on; 158 regulator-min-microvolt = <5000000>; 159 regulator-max-microvolt = <5000000>; 160 regulator-name = "vcc5v0_sys_s5"; 161 vin-supply = <&vcc12v_dcin>; 162 }; 163 164 vcc5v0_usb_otg0: regulator-vcc5v0-usb-otg0 { 165 compatible = "regulator-fixed"; 166 enable-active-high; 167 gpios = <&gpio0 RK_PD1 GPIO_ACTIVE_HIGH>; 168 pinctrl-names = "default"; 169 pinctrl-0 = <&usb_otg0_pwren_h>; 170 regulator-min-microvolt = <5000000>; 171 regulator-max-microvolt = <5000000>; 172 regulator-name = "vcc5v0_usb_otg0"; 173 vin-supply = <&vcc5v0_sys_s5>; 174 }; 175 176 vcc5v_hdmi_tx: regulator-vcc5v-hdmi-tx { 177 compatible = "regulator-fixed"; 178 regulator-always-on; 179 regulator-min-microvolt = <5000000>; 180 regulator-max-microvolt = <5000000>; 181 regulator-name = "vcc5v_hdmi_tx"; 182 vin-supply = <&vcc5v0_sys_s5>; 183 }; 184 185 vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 { 186 compatible = "regulator-fixed"; 187 regulator-always-on; 188 regulator-boot-on; 189 regulator-min-microvolt = <1100000>; 190 regulator-max-microvolt = <1100000>; 191 regulator-name = "vcc_1v1_nldo_s3"; 192 vin-supply = <&vcc5v0_sys_s5>; 193 }; 194 195 vcc_2v0_pldo_s3: regulator-vcc-2v0-pldo-s3 { 196 compatible = "regulator-fixed"; 197 regulator-always-on; 198 regulator-boot-on; 199 regulator-min-microvolt = <2000000>; 200 regulator-max-microvolt = <2000000>; 201 regulator-name = "vcc_2v0_pldo_s3"; 202 vin-supply = <&vcc5v0_sys_s5>; 203 }; 204 205 vcc_3v3_s0: regulator-vcc-3v3-s0 { 206 compatible = "regulator-fixed"; 207 regulator-always-on; 208 regulator-boot-on; 209 regulator-min-microvolt = <3300000>; 210 regulator-max-microvolt = <3300000>; 211 regulator-name = "vcc_3v3_s0"; 212 vin-supply = <&vcc_3v3_s3>; 213 }; 214 215 sound { 216 compatible = "simple-audio-card"; 217 pinctrl-names = "default"; 218 pinctrl-0 = <&hp_det_l>; 219 220 simple-audio-card,bitclock-master = <&masterdai>; 221 simple-audio-card,format = "i2s"; 222 simple-audio-card,hp-det-gpios = <&gpio2 RK_PD6 GPIO_ACTIVE_LOW>; 223 simple-audio-card,mclk-fs = <256>; 224 simple-audio-card,name = "Onboard Analog RT5616"; 225 226 simple-audio-card,routing = 227 "Headphones", "HPOL", 228 "Headphones", "HPOR", 229 "IN1P", "Microphone Jack"; 230 simple-audio-card,widgets = 231 "Headphone", "Headphones", 232 "Microphone", "Microphone Jack"; 233 234 simple-audio-card,codec { 235 sound-dai = <&rt5616>; 236 }; 237 238 masterdai: simple-audio-card,cpu { 239 sound-dai = <&sai2>; 240 system-clock-frequency = <12288000>; 241 }; 242 }; 243}; 244 245&combphy0_ps { 246 status = "okay"; 247}; 248 249&combphy1_psu { 250 status = "okay"; 251}; 252 253&cpu_b0 { 254 cpu-supply = <&vdd_cpu_big_s0>; 255}; 256 257&cpu_b1 { 258 cpu-supply = <&vdd_cpu_big_s0>; 259}; 260 261&cpu_b2 { 262 cpu-supply = <&vdd_cpu_big_s0>; 263}; 264 265&cpu_b3 { 266 cpu-supply = <&vdd_cpu_big_s0>; 267}; 268 269&cpu_l0 { 270 cpu-supply = <&vdd_cpu_lit_s0>; 271}; 272 273&cpu_l1 { 274 cpu-supply = <&vdd_cpu_lit_s0>; 275}; 276 277&cpu_l2 { 278 cpu-supply = <&vdd_cpu_lit_s0>; 279}; 280 281&cpu_l3 { 282 cpu-supply = <&vdd_cpu_lit_s0>; 283}; 284 285&fspi1m1_pins { 286 /* gpio1_d5, gpio1_c4-c7 (clk, d0-d4) are for spi nor flash */ 287 /* gpio1_d0-d4 muxed to sai2 audio functions */ 288 rockchip,pins = 289 <1 RK_PD5 3 &pcfg_pull_none>, 290 <1 RK_PC4 3 &pcfg_pull_none>, 291 <1 RK_PC5 3 &pcfg_pull_none>, 292 <1 RK_PC6 3 &pcfg_pull_none>, 293 <1 RK_PC7 3 &pcfg_pull_none>; 294}; 295 296&gmac0 { 297 clock_in_out = "output"; 298 phy-handle = <&rgmii_phy0>; 299 phy-mode = "rgmii-id"; 300 phy-supply = <&vcc_3v3_s3>; 301 pinctrl-names = "default"; 302 pinctrl-0 = <ð0m0_miim>, 303 <ð0m0_tx_bus2>, 304 <ð0m0_rx_bus2>, 305 <ð0m0_rgmii_clk>, 306 <ð0m0_rgmii_bus>; 307 status = "okay"; 308}; 309 310&gmac1 { 311 clock_in_out = "output"; 312 phy-handle = <&rgmii_phy1>; 313 phy-mode = "rgmii-id"; 314 phy-supply = <&vcc_3v3_s3>; 315 pinctrl-names = "default"; 316 pinctrl-0 = <ð1m0_miim>, 317 <ð1m0_tx_bus2>, 318 <ð1m0_rx_bus2>, 319 <ð1m0_rgmii_clk>, 320 <ð1m0_rgmii_bus>; 321 status = "okay"; 322}; 323 324&gpu { 325 mali-supply = <&vdd_gpu_s0>; 326 status = "okay"; 327}; 328 329&hdmi { 330 status = "okay"; 331}; 332 333&hdmi_in { 334 hdmi_in_vp0: endpoint { 335 remote-endpoint = <&vp0_out_hdmi>; 336 }; 337}; 338 339&hdmi_out { 340 hdmi_out_con: endpoint { 341 remote-endpoint = <&hdmi_con_in>; 342 }; 343}; 344 345&hdmi_sound { 346 status = "okay"; 347}; 348 349&hdptxphy { 350 status = "okay"; 351}; 352 353&i2c1 { 354 status = "okay"; 355 356 pmic@23 { 357 compatible = "rockchip,rk806"; 358 reg = <0x23>; 359 #gpio-cells = <2>; 360 gpio-controller; 361 interrupt-parent = <&gpio0>; 362 interrupts = <6 IRQ_TYPE_LEVEL_LOW>; 363 pinctrl-names = "default"; 364 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 365 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 366 system-power-controller; 367 368 vcc1-supply = <&vcc5v0_sys_s5>; 369 vcc2-supply = <&vcc5v0_sys_s5>; 370 vcc3-supply = <&vcc5v0_sys_s5>; 371 vcc4-supply = <&vcc5v0_sys_s5>; 372 vcc5-supply = <&vcc5v0_sys_s5>; 373 vcc6-supply = <&vcc5v0_sys_s5>; 374 vcc7-supply = <&vcc5v0_sys_s5>; 375 vcc8-supply = <&vcc5v0_sys_s5>; 376 vcc9-supply = <&vcc5v0_sys_s5>; 377 vcc10-supply = <&vcc5v0_sys_s5>; 378 vcc11-supply = <&vcc_2v0_pldo_s3>; 379 vcc12-supply = <&vcc5v0_sys_s5>; 380 vcc13-supply = <&vcc_1v1_nldo_s3>; 381 vcc14-supply = <&vcc_1v1_nldo_s3>; 382 vcca-supply = <&vcc5v0_sys_s5>; 383 384 rk806_dvs1_null: dvs1-null-pins { 385 pins = "gpio_pwrctrl1"; 386 function = "pin_fun0"; 387 }; 388 389 rk806_dvs1_slp: dvs1-slp-pins { 390 pins = "gpio_pwrctrl1"; 391 function = "pin_fun1"; 392 }; 393 394 rk806_dvs1_pwrdn: dvs1-pwrdn-pins { 395 pins = "gpio_pwrctrl1"; 396 function = "pin_fun2"; 397 }; 398 399 rk806_dvs1_rst: dvs1-rst-pins { 400 pins = "gpio_pwrctrl1"; 401 function = "pin_fun3"; 402 }; 403 404 rk806_dvs2_null: dvs2-null-pins { 405 pins = "gpio_pwrctrl2"; 406 function = "pin_fun0"; 407 }; 408 409 rk806_dvs2_slp: dvs2-slp-pins { 410 pins = "gpio_pwrctrl2"; 411 function = "pin_fun1"; 412 }; 413 414 rk806_dvs2_pwrdn: dvs2-pwrdn-pins { 415 pins = "gpio_pwrctrl2"; 416 function = "pin_fun2"; 417 }; 418 419 rk806_dvs2_rst: dvs2-rst-pins { 420 pins = "gpio_pwrctrl2"; 421 function = "pin_fun3"; 422 }; 423 424 rk806_dvs2_dvs: dvs2-dvs-pins { 425 pins = "gpio_pwrctrl2"; 426 function = "pin_fun4"; 427 }; 428 429 rk806_dvs2_gpio: dvs2-gpio-pins { 430 pins = "gpio_pwrctrl2"; 431 function = "pin_fun5"; 432 }; 433 434 rk806_dvs3_null: dvs3-null-pins { 435 pins = "gpio_pwrctrl3"; 436 function = "pin_fun0"; 437 }; 438 439 rk806_dvs3_slp: dvs3-slp-pins { 440 pins = "gpio_pwrctrl3"; 441 function = "pin_fun1"; 442 }; 443 444 rk806_dvs3_pwrdn: dvs3-pwrdn-pins { 445 pins = "gpio_pwrctrl3"; 446 function = "pin_fun2"; 447 }; 448 449 rk806_dvs3_rst: dvs3-rst-pins { 450 pins = "gpio_pwrctrl3"; 451 function = "pin_fun3"; 452 }; 453 454 rk806_dvs3_dvs: dvs3-dvs-pins { 455 pins = "gpio_pwrctrl3"; 456 function = "pin_fun4"; 457 }; 458 459 rk806_dvs3_gpio: dvs3-gpio-pins { 460 pins = "gpio_pwrctrl3"; 461 function = "pin_fun5"; 462 }; 463 464 regulators { 465 vdd_cpu_big_s0: dcdc-reg1 { 466 regulator-always-on; 467 regulator-boot-on; 468 regulator-enable-ramp-delay = <400>; 469 regulator-min-microvolt = <550000>; 470 regulator-max-microvolt = <950000>; 471 regulator-name = "vdd_cpu_big_s0"; 472 regulator-ramp-delay = <12500>; 473 474 regulator-state-mem { 475 regulator-off-in-suspend; 476 }; 477 }; 478 479 vdd_npu_s0: dcdc-reg2 { 480 regulator-boot-on; 481 regulator-enable-ramp-delay = <400>; 482 regulator-min-microvolt = <550000>; 483 regulator-max-microvolt = <950000>; 484 regulator-name = "vdd_npu_s0"; 485 regulator-ramp-delay = <12500>; 486 487 regulator-state-mem { 488 regulator-off-in-suspend; 489 }; 490 }; 491 492 vdd_cpu_lit_s0: dcdc-reg3 { 493 regulator-always-on; 494 regulator-boot-on; 495 regulator-min-microvolt = <550000>; 496 regulator-max-microvolt = <950000>; 497 regulator-name = "vdd_cpu_lit_s0"; 498 regulator-ramp-delay = <12500>; 499 500 regulator-state-mem { 501 regulator-off-in-suspend; 502 regulator-suspend-microvolt = <750000>; 503 }; 504 }; 505 506 vcc_3v3_s3: dcdc-reg4 { 507 regulator-always-on; 508 regulator-boot-on; 509 regulator-min-microvolt = <3300000>; 510 regulator-max-microvolt = <3300000>; 511 regulator-name = "vcc_3v3_s3"; 512 513 regulator-state-mem { 514 regulator-on-in-suspend; 515 regulator-suspend-microvolt = <3300000>; 516 }; 517 }; 518 519 vdd_gpu_s0: dcdc-reg5 { 520 regulator-boot-on; 521 regulator-enable-ramp-delay = <400>; 522 regulator-min-microvolt = <550000>; 523 regulator-max-microvolt = <900000>; 524 regulator-name = "vdd_gpu_s0"; 525 regulator-ramp-delay = <12500>; 526 527 regulator-state-mem { 528 regulator-off-in-suspend; 529 regulator-suspend-microvolt = <850000>; 530 }; 531 }; 532 533 vddq_ddr_s0: dcdc-reg6 { 534 regulator-always-on; 535 regulator-boot-on; 536 regulator-name = "vddq_ddr_s0"; 537 538 regulator-state-mem { 539 regulator-off-in-suspend; 540 }; 541 }; 542 543 vdd_logic_s0: dcdc-reg7 { 544 regulator-always-on; 545 regulator-boot-on; 546 regulator-min-microvolt = <550000>; 547 regulator-max-microvolt = <800000>; 548 regulator-name = "vdd_logic_s0"; 549 550 regulator-state-mem { 551 regulator-off-in-suspend; 552 }; 553 }; 554 555 vcc_1v8_s3: dcdc-reg8 { 556 regulator-always-on; 557 regulator-boot-on; 558 regulator-min-microvolt = <1800000>; 559 regulator-max-microvolt = <1800000>; 560 regulator-name = "vcc_1v8_s3"; 561 562 regulator-state-mem { 563 regulator-on-in-suspend; 564 regulator-suspend-microvolt = <1800000>; 565 }; 566 }; 567 568 vdd2_ddr_s3: dcdc-reg9 { 569 regulator-always-on; 570 regulator-boot-on; 571 regulator-name = "vdd2_ddr_s3"; 572 573 regulator-state-mem { 574 regulator-on-in-suspend; 575 }; 576 }; 577 578 vdd_ddr_s0: dcdc-reg10 { 579 regulator-always-on; 580 regulator-boot-on; 581 regulator-min-microvolt = <550000>; 582 regulator-max-microvolt = <1200000>; 583 regulator-name = "vdd_ddr_s0"; 584 585 regulator-state-mem { 586 regulator-off-in-suspend; 587 }; 588 }; 589 590 vcca_1v8_s0: pldo-reg1 { 591 regulator-always-on; 592 regulator-boot-on; 593 regulator-min-microvolt = <1800000>; 594 regulator-max-microvolt = <1800000>; 595 regulator-name = "vcca_1v8_s0"; 596 597 regulator-state-mem { 598 regulator-off-in-suspend; 599 }; 600 }; 601 602 vcca1v8_pldo2_s0: pldo-reg2 { 603 regulator-always-on; 604 regulator-boot-on; 605 regulator-min-microvolt = <1800000>; 606 regulator-max-microvolt = <1800000>; 607 regulator-name = "vcca1v8_pldo2_s0"; 608 609 regulator-state-mem { 610 regulator-off-in-suspend; 611 }; 612 }; 613 614 vdda_1v2_s0: pldo-reg3 { 615 regulator-always-on; 616 regulator-boot-on; 617 regulator-min-microvolt = <1200000>; 618 regulator-max-microvolt = <1200000>; 619 regulator-name = "vdda_1v2_s0"; 620 621 regulator-state-mem { 622 regulator-off-in-suspend; 623 }; 624 }; 625 626 vcca_3v3_s0: pldo-reg4 { 627 regulator-always-on; 628 regulator-boot-on; 629 regulator-min-microvolt = <3300000>; 630 regulator-max-microvolt = <3300000>; 631 regulator-name = "vcca_3v3_s0"; 632 633 regulator-state-mem { 634 regulator-off-in-suspend; 635 }; 636 }; 637 638 vccio_sd_s0: pldo-reg5 { 639 regulator-always-on; 640 regulator-boot-on; 641 regulator-min-microvolt = <1800000>; 642 regulator-max-microvolt = <3300000>; 643 regulator-name = "vccio_sd_s0"; 644 645 regulator-state-mem { 646 regulator-off-in-suspend; 647 }; 648 }; 649 650 vcca1v8_pldo6_s3: pldo-reg6 { 651 regulator-always-on; 652 regulator-boot-on; 653 regulator-min-microvolt = <1800000>; 654 regulator-max-microvolt = <1800000>; 655 regulator-name = "vcca1v8_pldo6_s3"; 656 657 regulator-state-mem { 658 regulator-on-in-suspend; 659 regulator-suspend-microvolt = <1800000>; 660 }; 661 }; 662 663 vdd_0v75_s3: nldo-reg1 { 664 regulator-always-on; 665 regulator-boot-on; 666 regulator-min-microvolt = <750000>; 667 regulator-max-microvolt = <750000>; 668 regulator-name = "vdd_0v75_s3"; 669 670 regulator-state-mem { 671 regulator-on-in-suspend; 672 regulator-suspend-microvolt = <750000>; 673 }; 674 }; 675 676 vdda_ddr_pll_s0: nldo-reg2 { 677 regulator-always-on; 678 regulator-boot-on; 679 regulator-min-microvolt = <850000>; 680 regulator-max-microvolt = <850000>; 681 regulator-name = "vdda_ddr_pll_s0"; 682 683 regulator-state-mem { 684 regulator-off-in-suspend; 685 }; 686 }; 687 688 vdda0v75_hdmi_s0: nldo-reg3 { 689 regulator-always-on; 690 regulator-boot-on; 691 regulator-min-microvolt = <837500>; 692 regulator-max-microvolt = <837500>; 693 regulator-name = "vdda0v75_hdmi_s0"; 694 695 regulator-state-mem { 696 regulator-off-in-suspend; 697 }; 698 }; 699 700 vdda_0v85_s0: nldo-reg4 { 701 regulator-always-on; 702 regulator-boot-on; 703 regulator-min-microvolt = <850000>; 704 regulator-max-microvolt = <850000>; 705 regulator-name = "vdda_0v85_s0"; 706 707 regulator-state-mem { 708 regulator-off-in-suspend; 709 }; 710 }; 711 712 vdda_0v75_s0: nldo-reg5 { 713 regulator-always-on; 714 regulator-boot-on; 715 regulator-min-microvolt = <750000>; 716 regulator-max-microvolt = <750000>; 717 regulator-name = "vdda_0v75_s0"; 718 719 regulator-state-mem { 720 regulator-off-in-suspend; 721 }; 722 }; 723 }; 724 }; 725}; 726 727&i2c2 { 728 status = "okay"; 729 730 hym8563: rtc@51 { 731 compatible = "haoyu,hym8563"; 732 reg = <0x51>; 733 #clock-cells = <0>; 734 clock-output-names = "hym8563"; 735 interrupt-parent = <&gpio0>; 736 interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>; 737 pinctrl-names = "default"; 738 pinctrl-0 = <&hym8563_int>; 739 wakeup-source; 740 }; 741}; 742 743&i2c5 { 744 clock-frequency = <200000>; 745 pinctrl-names = "default"; 746 pinctrl-0 = <&i2c5m3_xfer>; 747 status = "okay"; 748 749 rt5616: audio-codec@1b { 750 compatible = "realtek,rt5616"; 751 reg = <0x1b>; 752 assigned-clocks = <&cru CLK_SAI2_MCLKOUT_TO_IO>; 753 assigned-clock-rates = <12288000>; 754 clocks = <&cru CLK_SAI2_MCLKOUT_TO_IO>; 755 clock-names = "mclk"; 756 pinctrl-0 = <&sai2m0_mclk>; 757 pinctrl-names = "default"; 758 #sound-dai-cells = <0>; 759 }; 760}; 761 762&mdio0 { 763 rgmii_phy0: phy@1 { 764 compatible = "ethernet-phy-ieee802.3-c22"; 765 reg = <0x1>; 766 clocks = <&cru REFCLKO25M_GMAC0_OUT>; 767 interrupt-parent = <&gpio2>; 768 interrupts = <RK_PB1 IRQ_TYPE_LEVEL_LOW>; 769 pinctrl-names = "default"; 770 pinctrl-0 = <&gmac0_int>, <&gmac0_rst>; 771 reset-assert-us = <20000>; 772 reset-deassert-us = <100000>; 773 reset-gpios = <&gpio2 RK_PB5 GPIO_ACTIVE_LOW>; 774 }; 775}; 776 777&mdio1 { 778 rgmii_phy1: phy@1 { 779 compatible = "ethernet-phy-ieee802.3-c22"; 780 reg = <0x1>; 781 clocks = <&cru REFCLKO25M_GMAC1_OUT>; 782 interrupt-parent = <&gpio3>; 783 interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>; 784 pinctrl-names = "default"; 785 pinctrl-0 = <&gmac1_int>, <&gmac1_rst>; 786 reset-assert-us = <20000>; 787 reset-deassert-us = <100000>; 788 reset-gpios = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>; 789 }; 790}; 791 792&pcie0 { 793 pinctrl-names = "default"; 794 pinctrl-0 = <&pcie0_perstn>; 795 reset-gpios = <&gpio2 RK_PB4 GPIO_ACTIVE_HIGH>; 796 vpcie3v3-supply = <&vcc3v3_m2_keym>; 797 status = "okay"; 798}; 799 800&pinctrl { 801 gmac { 802 gmac0_int: gmac0-int { 803 rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>; 804 }; 805 gmac0_rst: gmac0-rst { 806 rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 807 }; 808 gmac1_int: gmac1-int { 809 rockchip,pins = <3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>; 810 }; 811 gmac1_rst: gmac1-rst { 812 rockchip,pins = <3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; 813 }; 814 }; 815 816 hym8563 { 817 hym8563_int: hym8563-int { 818 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; 819 }; 820 }; 821 822 keys { 823 usr_button_l: usr-button-l { 824 rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>; 825 }; 826 }; 827 828 leds { 829 led_sys_h: led-sys-h { 830 rockchip,pins = <2 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 831 }; 832 led1_h: led1-h { 833 rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>; 834 }; 835 led2_h: led2-h { 836 rockchip,pins = <2 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 837 }; 838 }; 839 840 pcie { 841 pcie0_pwren_h: pcie0-pwren-h { 842 rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 843 }; 844 pcie0_perstn: pcie0-perstn { 845 rockchip,pins = <2 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>; 846 }; 847 }; 848 849 sdmmc { 850 sdmmc0_pwren_h: sdmmc0-pwren-h { 851 rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>; 852 }; 853 }; 854 855 sound { 856 hp_det_l: hp-det-l { 857 rockchip,pins = <2 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>; 858 }; 859 }; 860 861 usb { 862 usb3_host_pwren_h: usb3-host-pwren-h { 863 rockchip,pins = <0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>; 864 }; 865 usb_otg0_pwren_h: usb-otg0-pwren-h { 866 rockchip,pins = <0 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>; 867 }; 868 }; 869}; 870 871&sai2 { 872 status = "okay"; 873}; 874 875&sai6 { 876 status = "okay"; 877}; 878 879&saradc { 880 vref-supply = <&vcca_1v8_s0>; 881 status = "okay"; 882}; 883 884&sdmmc { 885 bus-width = <4>; 886 cap-mmc-highspeed; 887 cap-sd-highspeed; 888 disable-wp; 889 no-mmc; 890 no-sdio; 891 pinctrl-names = "default"; 892 pinctrl-0 = <&sdmmc0_clk>, <&sdmmc0_cmd>, <&sdmmc0_det>, <&sdmmc0_bus4>; 893 sd-uhs-sdr104; 894 vmmc-supply = <&vcc_3v3_s3>; 895 vqmmc-supply = <&vcc3v3_sd_s0>; 896 status = "okay"; 897}; 898 899&sfc1 { 900 pinctrl-names = "default"; 901 pinctrl-0 = <&fspi1m1_csn0>, <&fspi1m1_pins>; 902 status = "okay"; 903 904 flash@0 { 905 compatible = "jedec,spi-nor"; 906 reg = <0>; 907 m25p,fast-read; 908 spi-max-frequency = <50000000>; 909 spi-rx-bus-width = <4>; 910 spi-tx-bus-width = <1>; 911 vcc-supply = <&vcc_1v8_s3>; 912 }; 913}; 914 915&u2phy0 { 916 status = "okay"; 917}; 918 919&u2phy0_otg { 920 phy-supply = <&vcc5v0_usb_otg0>; 921 status = "okay"; 922}; 923 924&u2phy1 { 925 status = "okay"; 926}; 927 928&u2phy1_otg { 929 phy-supply = <&usb3_port2_5v>; 930 status = "okay"; 931}; 932 933&uart0 { 934 status = "okay"; 935}; 936 937&ufshc { 938 vcc-supply = <&vcc_3v3_s3>; 939 vccq-supply = <&vcc1v2_ufs_vccq>; 940 vccq2-supply = <&vcc1v8_ufs_vccq2>; 941 vdd-hba-supply = <&vdda_1v2_s0>; 942 status = "okay"; 943}; 944 945&usbdp_phy { 946 status = "okay"; 947}; 948 949&usb_drd0_dwc3 { 950 dr_mode = "otg"; 951 extcon = <&u2phy0>; 952 status = "okay"; 953}; 954 955&usb_drd1_dwc3 { 956 dr_mode = "host"; 957 status = "okay"; 958}; 959 960&vop { 961 status = "okay"; 962}; 963 964&vop_mmu { 965 status = "okay"; 966}; 967 968&vp0 { 969 vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { 970 reg = <ROCKCHIP_VOP2_EP_HDMI0>; 971 remote-endpoint = <&hdmi_in_vp0>; 972 }; 973}; 974 975&wdt { 976 status = "okay"; 977}; 978