1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2024 Youyeetoo 4 * Copyright (c) 2026 Daniele Briguglio <hello@superkali.me> 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/soc/rockchip,vop2.h> 14#include <dt-bindings/usb/pd.h> 15#include "rk3588.dtsi" 16 17/ { 18 model = "Youyeetoo YY3588"; 19 compatible = "youyeetoo,yy3588", "rockchip,rk3588"; 20 21 aliases { 22 ethernet0 = &gmac1; 23 ethernet1 = &r8125; 24 mmc0 = &sdhci; 25 mmc1 = &sdmmc; 26 }; 27 28 adc-keys { 29 compatible = "adc-keys"; 30 io-channels = <&saradc 1>; 31 io-channel-names = "buttons"; 32 keyup-threshold-microvolt = <1800000>; 33 poll-interval = <100>; 34 35 button-recovery { 36 label = "Recovery"; 37 linux,code = <KEY_VENDOR>; 38 press-threshold-microvolt = <17000>; 39 }; 40 }; 41 42 analog-sound { 43 compatible = "simple-audio-card"; 44 pinctrl-names = "default"; 45 pinctrl-0 = <&hp_det>; 46 simple-audio-card,name = "rockchip-es8388"; 47 simple-audio-card,aux-devs = <&speaker_amp>; 48 simple-audio-card,format = "i2s"; 49 simple-audio-card,hp-det-gpios = <&gpio1 RK_PC4 GPIO_ACTIVE_LOW>; 50 simple-audio-card,mclk-fs = <256>; 51 simple-audio-card,pin-switches = "Headphones", "Speaker"; 52 simple-audio-card,routing = 53 "Headphones", "LOUT2", 54 "Headphones", "ROUT2", 55 "Speaker Amp INL", "LOUT1", 56 "Speaker Amp INR", "ROUT1", 57 "Speaker", "Speaker Amp OUTL", 58 "Speaker", "Speaker Amp OUTR", 59 "LINPUT1", "Microphone Jack", 60 "RINPUT1", "Microphone Jack", 61 "LINPUT2", "Onboard Microphone", 62 "RINPUT2", "Onboard Microphone"; 63 simple-audio-card,widgets = 64 "Microphone", "Microphone Jack", 65 "Microphone", "Onboard Microphone", 66 "Headphone", "Headphones", 67 "Speaker", "Speaker"; 68 69 simple-audio-card,codec { 70 sound-dai = <&es8388>; 71 system-clock-frequency = <12288000>; 72 }; 73 74 simple-audio-card,cpu { 75 sound-dai = <&i2s0_8ch>; 76 }; 77 }; 78 79 chosen { 80 stdout-path = "serial2:1500000n8"; 81 }; 82 83 hdmi0-con { 84 compatible = "hdmi-connector"; 85 type = "a"; 86 87 port { 88 hdmi0_con_in: endpoint { 89 remote-endpoint = <&hdmi0_out_con>; 90 }; 91 }; 92 }; 93 94 leds { 95 compatible = "gpio-leds"; 96 pinctrl-names = "default"; 97 pinctrl-0 = <&led_pins>; 98 99 led-0 { 100 color = <LED_COLOR_ID_BLUE>; 101 function = LED_FUNCTION_STATUS; 102 gpios = <&gpio1 RK_PD6 GPIO_ACTIVE_HIGH>; 103 }; 104 105 led-1 { 106 function = LED_FUNCTION_HEARTBEAT; 107 gpios = <&gpio1 RK_PD7 GPIO_ACTIVE_HIGH>; 108 linux,default-trigger = "heartbeat"; 109 }; 110 }; 111 112 /* PI6C557-05BLE PCIe 3.0 reference clock generator */ 113 pcie30_port0_refclk: pcie-oscillator { 114 compatible = "gated-fixed-clock"; 115 #clock-cells = <0>; 116 clock-frequency = <100000000>; 117 clock-output-names = "pcie30_refclk"; 118 vdd-supply = <&vcc3v3_pi6c_05>; 119 }; 120 121 fan: pwm-fan { 122 compatible = "pwm-fan"; 123 #cooling-cells = <2>; 124 cooling-levels = <0 50 100 150 200 255>; 125 fan-supply = <&vcc12v_dcin>; 126 pwms = <&pwm2 0 50000 0>; 127 }; 128 129 pcie20_avdd0v85: regulator-pcie20-avdd0v85 { 130 compatible = "regulator-fixed"; 131 regulator-name = "pcie20_avdd0v85"; 132 regulator-always-on; 133 regulator-boot-on; 134 regulator-min-microvolt = <850000>; 135 regulator-max-microvolt = <850000>; 136 vin-supply = <&vdd_0v85_s0>; 137 }; 138 139 pcie20_avdd1v8: regulator-pcie20-avdd1v8 { 140 compatible = "regulator-fixed"; 141 regulator-name = "pcie20_avdd1v8"; 142 regulator-always-on; 143 regulator-boot-on; 144 regulator-min-microvolt = <1800000>; 145 regulator-max-microvolt = <1800000>; 146 vin-supply = <&avcc_1v8_s0>; 147 }; 148 149 pcie30_avdd0v75: regulator-pcie30-avdd0v75 { 150 compatible = "regulator-fixed"; 151 regulator-name = "pcie30_avdd0v75"; 152 regulator-always-on; 153 regulator-boot-on; 154 regulator-min-microvolt = <750000>; 155 regulator-max-microvolt = <750000>; 156 vin-supply = <&avdd_0v75_s0>; 157 }; 158 159 pcie30_avdd1v8: regulator-pcie30-avdd1v8 { 160 compatible = "regulator-fixed"; 161 regulator-name = "pcie30_avdd1v8"; 162 regulator-always-on; 163 regulator-boot-on; 164 regulator-min-microvolt = <1800000>; 165 regulator-max-microvolt = <1800000>; 166 vin-supply = <&avcc_1v8_s0>; 167 }; 168 169 vbus5v0_typec: regulator-vbus5v0-typec { 170 compatible = "regulator-fixed"; 171 enable-active-high; 172 gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>; 173 pinctrl-names = "default"; 174 pinctrl-0 = <&typec5v_pwren>; 175 regulator-name = "vbus5v0_typec"; 176 regulator-min-microvolt = <5000000>; 177 regulator-max-microvolt = <5000000>; 178 vin-supply = <&vcc5v0_sys>; 179 }; 180 181 vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 { 182 compatible = "regulator-fixed"; 183 regulator-name = "vcc_1v1_nldo_s3"; 184 regulator-always-on; 185 regulator-boot-on; 186 regulator-min-microvolt = <1100000>; 187 regulator-max-microvolt = <1100000>; 188 vin-supply = <&vcc5v0_sys>; 189 }; 190 191 vcc12v_dcin: regulator-vcc12v-dcin { 192 compatible = "regulator-fixed"; 193 regulator-name = "vcc12v_dcin"; 194 regulator-always-on; 195 regulator-boot-on; 196 regulator-min-microvolt = <12000000>; 197 regulator-max-microvolt = <12000000>; 198 }; 199 200 vcc3v3_pi6c_05: regulator-vcc3v3-pi6c-05 { 201 compatible = "regulator-fixed"; 202 enable-active-high; 203 gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>; 204 pinctrl-names = "default"; 205 pinctrl-0 = <&pi6c_05_pwren>; 206 regulator-name = "vcc3v3_pi6c_05"; 207 regulator-min-microvolt = <3300000>; 208 regulator-max-microvolt = <3300000>; 209 startup-delay-us = <5000>; 210 vin-supply = <&vcc5v0_sys>; 211 }; 212 213 vcc3v3_sd_s0: regulator-vcc3v3-sd-s0 { 214 compatible = "regulator-fixed"; 215 regulator-name = "vcc3v3_sd_s0"; 216 regulator-always-on; 217 regulator-boot-on; 218 regulator-min-microvolt = <3300000>; 219 regulator-max-microvolt = <3300000>; 220 vin-supply = <&vcc3v3_sys>; 221 }; 222 223 vcc3v3_sys: regulator-vcc3v3-sys { 224 compatible = "regulator-fixed"; 225 regulator-name = "vcc3v3_sys"; 226 regulator-always-on; 227 regulator-boot-on; 228 regulator-min-microvolt = <3300000>; 229 regulator-max-microvolt = <3300000>; 230 vin-supply = <&vcc12v_dcin>; 231 }; 232 233 vcc5v0_sys: regulator-vcc5v0-sys { 234 compatible = "regulator-fixed"; 235 regulator-name = "vcc5v0_sys"; 236 regulator-always-on; 237 regulator-boot-on; 238 regulator-min-microvolt = <5000000>; 239 regulator-max-microvolt = <5000000>; 240 vin-supply = <&vcc12v_dcin>; 241 }; 242 243 speaker_amp: speaker-amplifier { 244 compatible = "simple-audio-amplifier"; 245 enable-gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_HIGH>; 246 pinctrl-names = "default"; 247 pinctrl-0 = <&spk_en>; 248 sound-name-prefix = "Speaker Amp"; 249 VCC-supply = <&vcc5v0_sys>; 250 }; 251}; 252 253&combphy0_ps { 254 status = "okay"; 255}; 256 257&combphy1_ps { 258 status = "okay"; 259}; 260 261&combphy2_psu { 262 status = "okay"; 263}; 264 265&cpu_b0 { 266 cpu-supply = <&vdd_cpu_big0_s0>; 267}; 268 269&cpu_b1 { 270 cpu-supply = <&vdd_cpu_big0_s0>; 271}; 272 273&cpu_b2 { 274 cpu-supply = <&vdd_cpu_big1_s0>; 275}; 276 277&cpu_b3 { 278 cpu-supply = <&vdd_cpu_big1_s0>; 279}; 280 281&cpu_l0 { 282 cpu-supply = <&vdd_cpu_lit_s0>; 283}; 284 285&cpu_l1 { 286 cpu-supply = <&vdd_cpu_lit_s0>; 287}; 288 289&cpu_l2 { 290 cpu-supply = <&vdd_cpu_lit_s0>; 291}; 292 293&cpu_l3 { 294 cpu-supply = <&vdd_cpu_lit_s0>; 295}; 296 297&gmac1 { 298 clock_in_out = "input"; 299 phy-handle = <&rgmii_phy>; 300 /* RX delay is added by the PHY, TX delay by the GMAC */ 301 phy-mode = "rgmii-rxid"; 302 pinctrl-names = "default"; 303 pinctrl-0 = <&gmac1_miim 304 &gmac1_tx_bus2 305 &gmac1_rx_bus2 306 &gmac1_rgmii_clk 307 &gmac1_rgmii_bus 308 &gmac1_clkinout>; 309 tx_delay = <0x43>; 310 status = "okay"; 311}; 312 313&gpu { 314 mali-supply = <&vdd_gpu_s0>; 315 status = "okay"; 316}; 317 318&hdmi0 { 319 frl-enable-gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_LOW>; 320 status = "okay"; 321}; 322 323&hdmi0_in { 324 hdmi0_in_vp0: endpoint { 325 remote-endpoint = <&vp0_out_hdmi0>; 326 }; 327}; 328 329&hdmi0_out { 330 hdmi0_out_con: endpoint { 331 remote-endpoint = <&hdmi0_con_in>; 332 }; 333}; 334 335&hdmi0_sound { 336 status = "okay"; 337}; 338 339&hdmi_receiver_cma { 340 status = "okay"; 341}; 342 343&hdmi_receiver { 344 hpd-gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>; 345 pinctrl-names = "default"; 346 pinctrl-0 = <&hdmim1_rx_cec &hdmim1_rx_hpdin &hdmim1_rx_scl &hdmim1_rx_sda &hdmirx_5v_det>; 347 status = "okay"; 348}; 349 350&hdptxphy0 { 351 status = "okay"; 352}; 353 354&i2c0 { 355 pinctrl-names = "default"; 356 pinctrl-0 = <&i2c0m2_xfer>; 357 status = "okay"; 358 359 vdd_cpu_big0_s0: regulator@42 { 360 compatible = "rockchip,rk8602"; 361 reg = <0x42>; 362 fcs,suspend-voltage-selector = <1>; 363 regulator-name = "vdd_cpu_big0_s0"; 364 regulator-always-on; 365 regulator-boot-on; 366 regulator-min-microvolt = <550000>; 367 regulator-max-microvolt = <1050000>; 368 regulator-ramp-delay = <2300>; 369 vin-supply = <&vcc5v0_sys>; 370 371 regulator-state-mem { 372 regulator-off-in-suspend; 373 }; 374 }; 375 376 vdd_cpu_big1_s0: regulator@43 { 377 compatible = "rockchip,rk8603", "rockchip,rk8602"; 378 reg = <0x43>; 379 fcs,suspend-voltage-selector = <1>; 380 regulator-name = "vdd_cpu_big1_s0"; 381 regulator-always-on; 382 regulator-boot-on; 383 regulator-min-microvolt = <550000>; 384 regulator-max-microvolt = <1050000>; 385 regulator-ramp-delay = <2300>; 386 vin-supply = <&vcc5v0_sys>; 387 388 regulator-state-mem { 389 regulator-off-in-suspend; 390 }; 391 }; 392}; 393 394&i2c1 { 395 pinctrl-names = "default"; 396 pinctrl-0 = <&i2c1m2_xfer>; 397 status = "okay"; 398 399 vdd_npu_s0: regulator@42 { 400 compatible = "rockchip,rk8602"; 401 reg = <0x42>; 402 fcs,suspend-voltage-selector = <1>; 403 regulator-name = "vdd_npu_s0"; 404 regulator-boot-on; 405 regulator-min-microvolt = <550000>; 406 regulator-max-microvolt = <950000>; 407 regulator-ramp-delay = <2300>; 408 vin-supply = <&vcc5v0_sys>; 409 410 regulator-state-mem { 411 regulator-off-in-suspend; 412 }; 413 }; 414}; 415 416&i2c6 { 417 clock-frequency = <400000>; 418 pinctrl-names = "default"; 419 pinctrl-0 = <&i2c6m0_xfer>; 420 status = "okay"; 421 422 usbc0: usb-typec@22 { 423 compatible = "fcs,fusb302"; 424 reg = <0x22>; 425 interrupt-parent = <&gpio0>; 426 interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>; 427 pinctrl-names = "default"; 428 pinctrl-0 = <&usbc0_int>; 429 vbus-supply = <&vbus5v0_typec>; 430 431 usb_con: connector { 432 compatible = "usb-c-connector"; 433 data-role = "dual"; 434 label = "USB-C"; 435 power-role = "source"; 436 source-pdos = <PDO_FIXED(5000, 1500, PDO_FIXED_USB_COMM)>; 437 438 ports { 439 #address-cells = <1>; 440 #size-cells = <0>; 441 442 port@0 { 443 reg = <0>; 444 445 usbc0_hs: endpoint { 446 remote-endpoint = <&usb_host0_xhci_drd_sw>; 447 }; 448 }; 449 450 port@1 { 451 reg = <1>; 452 453 usbc0_ss: endpoint { 454 remote-endpoint = <&usbdp_phy0_typec_ss>; 455 }; 456 }; 457 458 port@2 { 459 reg = <2>; 460 461 usbc0_sbu: endpoint { 462 remote-endpoint = <&usbdp_phy0_typec_sbu>; 463 }; 464 }; 465 }; 466 }; 467 }; 468 469 hym8563: rtc@51 { 470 compatible = "haoyu,hym8563"; 471 reg = <0x51>; 472 #clock-cells = <0>; 473 clock-output-names = "hym8563"; 474 }; 475}; 476 477&i2c7 { 478 pinctrl-names = "default"; 479 pinctrl-0 = <&i2c7m0_xfer>; 480 status = "okay"; 481 482 es8388: audio-codec@11 { 483 compatible = "everest,es8388", "everest,es8328"; 484 reg = <0x11>; 485 assigned-clocks = <&cru I2S0_8CH_MCLKOUT>; 486 assigned-clock-rates = <12288000>; 487 clocks = <&cru I2S0_8CH_MCLKOUT>; 488 AVDD-supply = <&vcc3v3_sys>; 489 DVDD-supply = <&vcc_1v8_s3>; 490 HPVDD-supply = <&vcc3v3_sys>; 491 PVDD-supply = <&vcc_1v8_s3>; 492 #sound-dai-cells = <0>; 493 }; 494}; 495 496&i2s0_8ch { 497 pinctrl-0 = <&i2s0_lrck 498 &i2s0_mclk 499 &i2s0_sclk 500 &i2s0_sdi0 501 &i2s0_sdo0>; 502 status = "okay"; 503}; 504 505&i2s5_8ch { 506 status = "okay"; 507}; 508 509&i2s7_8ch { 510 status = "okay"; 511}; 512 513&mdio1 { 514 rgmii_phy: ethernet-phy@1 { 515 /* RTL8211F */ 516 compatible = "ethernet-phy-id001c.c916"; 517 reg = <0x1>; 518 pinctrl-names = "default"; 519 pinctrl-0 = <&rtl8211f_rst>; 520 reset-assert-us = <20000>; 521 reset-deassert-us = <100000>; 522 reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>; 523 }; 524}; 525 526&package_thermal { 527 polling-delay = <1000>; 528 529 trips { 530 package_fan0: package-fan0 { 531 temperature = <55000>; 532 hysteresis = <2000>; 533 type = "active"; 534 }; 535 536 package_fan1: package-fan1 { 537 temperature = <65000>; 538 hysteresis = <2000>; 539 type = "active"; 540 }; 541 }; 542 543 cooling-maps { 544 map0 { 545 trip = <&package_fan0>; 546 cooling-device = <&fan THERMAL_NO_LIMIT 1>; 547 }; 548 549 map1 { 550 trip = <&package_fan1>; 551 cooling-device = <&fan 2 THERMAL_NO_LIMIT>; 552 }; 553 }; 554}; 555 556&pcie2x1l0 { 557 pinctrl-names = "default"; 558 pinctrl-0 = <&pcie2_0_rst>; 559 reset-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>; 560 vpcie3v3-supply = <&vcc3v3_sys>; 561 status = "okay"; 562}; 563 564&pcie2x1l1 { 565 pinctrl-names = "default"; 566 pinctrl-0 = <&pcie2_1_rst>; 567 reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>; 568 vpcie3v3-supply = <&vcc3v3_sys>; 569 status = "okay"; 570 571 pcie@0,0 { 572 reg = <0x300000 0 0 0 0>; 573 #address-cells = <3>; 574 #size-cells = <2>; 575 ranges; 576 device_type = "pci"; 577 bus-range = <0x30 0x3f>; 578 579 r8125: ethernet@0,0 { 580 reg = <0x310000 0 0 0 0>; 581 }; 582 }; 583}; 584 585&pcie30phy { 586 status = "okay"; 587}; 588 589&pcie3x4 { 590 clocks = <&cru ACLK_PCIE_4L_MSTR>, <&cru ACLK_PCIE_4L_SLV>, 591 <&cru ACLK_PCIE_4L_DBI>, <&cru PCLK_PCIE_4L>, 592 <&cru CLK_PCIE_AUX0>, <&cru CLK_PCIE4L_PIPE>, 593 <&pcie30_port0_refclk>; 594 clock-names = "aclk_mst", "aclk_slv", 595 "aclk_dbi", "pclk", 596 "aux", "pipe", 597 "ref"; 598 pinctrl-names = "default"; 599 pinctrl-0 = <&pcie3x4_perstn>; 600 reset-gpios = <&gpio1 RK_PB4 GPIO_ACTIVE_HIGH>; 601 vpcie3v3-supply = <&vcc3v3_sys>; 602 status = "okay"; 603}; 604 605&pinctrl { 606 hdmirx { 607 hdmirx_5v_det: hdmirx-5v-det { 608 rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; 609 }; 610 }; 611 612 leds { 613 led_pins: led-pins { 614 rockchip,pins = <1 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>, 615 <1 RK_PD7 RK_FUNC_GPIO &pcfg_pull_none>; 616 }; 617 }; 618 619 pcie { 620 pcie2_0_rst: pcie2-0-rst { 621 rockchip,pins = <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>; 622 }; 623 624 pcie2_1_rst: pcie2-1-rst { 625 rockchip,pins = <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 626 }; 627 628 pi6c_05_pwren: pi6c-05-pwren { 629 rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>; 630 }; 631 632 pcie3x4_perstn: pcie3x4-perstn { 633 rockchip,pins = <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; 634 }; 635 }; 636 637 rtl8211f { 638 rtl8211f_rst: rtl8211f-rst { 639 rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; 640 }; 641 }; 642 643 sound { 644 hp_det: hp-det { 645 rockchip,pins = <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_down>; 646 }; 647 648 spk_en: spk-en { 649 rockchip,pins = <4 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 650 }; 651 }; 652 653 usb { 654 typec5v_pwren: typec5v-pwren { 655 rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 656 }; 657 658 usbc0_int: usbc0-int { 659 rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>; 660 }; 661 }; 662}; 663 664&pwm2 { 665 pinctrl-0 = <&pwm2m2_pins>; 666 status = "okay"; 667}; 668 669&rknn_core_0 { 670 npu-supply = <&vdd_npu_s0>; 671 sram-supply = <&vdd_npu_s0>; 672 status = "okay"; 673}; 674 675&rknn_core_1 { 676 npu-supply = <&vdd_npu_s0>; 677 sram-supply = <&vdd_npu_s0>; 678 status = "okay"; 679}; 680 681&rknn_core_2 { 682 npu-supply = <&vdd_npu_s0>; 683 sram-supply = <&vdd_npu_s0>; 684 status = "okay"; 685}; 686 687&rknn_mmu_0 { 688 status = "okay"; 689}; 690 691&rknn_mmu_1 { 692 status = "okay"; 693}; 694 695&rknn_mmu_2 { 696 status = "okay"; 697}; 698 699&saradc { 700 vref-supply = <&avcc_1v8_s0>; 701 status = "okay"; 702}; 703 704&sata0 { 705 status = "okay"; 706}; 707 708&sdhci { 709 bus-width = <8>; 710 mmc-hs400-1_8v; 711 mmc-hs400-enhanced-strobe; 712 no-sd; 713 no-sdio; 714 non-removable; 715 status = "okay"; 716}; 717 718&sdmmc { 719 bus-width = <4>; 720 cap-mmc-highspeed; 721 cap-sd-highspeed; 722 disable-wp; 723 max-frequency = <150000000>; 724 no-mmc; 725 no-sdio; 726 sd-uhs-sdr104; 727 vmmc-supply = <&vcc3v3_sd_s0>; 728 vqmmc-supply = <&vccio_sd_s0>; 729 status = "okay"; 730}; 731 732&spi2 { 733 assigned-clocks = <&cru CLK_SPI2>; 734 assigned-clock-rates = <200000000>; 735 num-cs = <1>; 736 pinctrl-names = "default"; 737 pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>; 738 status = "okay"; 739 740 pmic@0 { 741 compatible = "rockchip,rk806"; 742 reg = <0x0>; 743 interrupt-parent = <&gpio0>; 744 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 745 pinctrl-names = "default"; 746 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 747 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 748 spi-max-frequency = <1000000>; 749 system-power-controller; 750 751 vcc1-supply = <&vcc5v0_sys>; 752 vcc2-supply = <&vcc5v0_sys>; 753 vcc3-supply = <&vcc5v0_sys>; 754 vcc4-supply = <&vcc5v0_sys>; 755 vcc5-supply = <&vcc5v0_sys>; 756 vcc6-supply = <&vcc5v0_sys>; 757 vcc7-supply = <&vcc5v0_sys>; 758 vcc8-supply = <&vcc5v0_sys>; 759 vcc9-supply = <&vcc5v0_sys>; 760 vcc10-supply = <&vcc5v0_sys>; 761 vcc11-supply = <&vcc_2v0_pldo_s3>; 762 vcc12-supply = <&vcc5v0_sys>; 763 vcc13-supply = <&vcc_1v1_nldo_s3>; 764 vcc14-supply = <&vcc_1v1_nldo_s3>; 765 vcca-supply = <&vcc5v0_sys>; 766 767 gpio-controller; 768 #gpio-cells = <2>; 769 770 rk806_dvs1_null: dvs1-null-pins { 771 pins = "gpio_pwrctrl1"; 772 function = "pin_fun0"; 773 }; 774 775 rk806_dvs2_null: dvs2-null-pins { 776 pins = "gpio_pwrctrl2"; 777 function = "pin_fun0"; 778 }; 779 780 rk806_dvs3_null: dvs3-null-pins { 781 pins = "gpio_pwrctrl3"; 782 function = "pin_fun0"; 783 }; 784 785 regulators { 786 vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 { 787 regulator-boot-on; 788 regulator-min-microvolt = <550000>; 789 regulator-max-microvolt = <950000>; 790 regulator-ramp-delay = <12500>; 791 regulator-name = "vdd_gpu_s0"; 792 regulator-enable-ramp-delay = <400>; 793 794 regulator-state-mem { 795 regulator-off-in-suspend; 796 }; 797 }; 798 799 vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 { 800 regulator-always-on; 801 regulator-boot-on; 802 regulator-min-microvolt = <550000>; 803 regulator-max-microvolt = <950000>; 804 regulator-ramp-delay = <12500>; 805 regulator-name = "vdd_cpu_lit_s0"; 806 807 regulator-state-mem { 808 regulator-off-in-suspend; 809 }; 810 }; 811 812 vdd_log_s0: dcdc-reg3 { 813 regulator-always-on; 814 regulator-boot-on; 815 regulator-min-microvolt = <675000>; 816 regulator-max-microvolt = <750000>; 817 regulator-ramp-delay = <12500>; 818 regulator-name = "vdd_log_s0"; 819 820 regulator-state-mem { 821 regulator-off-in-suspend; 822 }; 823 }; 824 825 vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 { 826 regulator-always-on; 827 regulator-boot-on; 828 regulator-min-microvolt = <550000>; 829 regulator-max-microvolt = <950000>; 830 regulator-ramp-delay = <12500>; 831 regulator-name = "vdd_vdenc_s0"; 832 833 regulator-state-mem { 834 regulator-off-in-suspend; 835 }; 836 }; 837 838 vdd_ddr_s0: dcdc-reg5 { 839 regulator-always-on; 840 regulator-boot-on; 841 regulator-min-microvolt = <675000>; 842 regulator-max-microvolt = <900000>; 843 regulator-ramp-delay = <12500>; 844 regulator-name = "vdd_ddr_s0"; 845 846 regulator-state-mem { 847 regulator-off-in-suspend; 848 }; 849 }; 850 851 vdd2_ddr_s3: dcdc-reg6 { 852 regulator-always-on; 853 regulator-boot-on; 854 regulator-name = "vdd2_ddr_s3"; 855 856 regulator-state-mem { 857 regulator-on-in-suspend; 858 }; 859 }; 860 861 vcc_2v0_pldo_s3: dcdc-reg7 { 862 regulator-always-on; 863 regulator-boot-on; 864 regulator-min-microvolt = <2000000>; 865 regulator-max-microvolt = <2000000>; 866 regulator-ramp-delay = <12500>; 867 regulator-name = "vdd_2v0_pldo_s3"; 868 869 regulator-state-mem { 870 regulator-on-in-suspend; 871 }; 872 }; 873 874 vcc_3v3_s3: dcdc-reg8 { 875 regulator-always-on; 876 regulator-boot-on; 877 regulator-min-microvolt = <3300000>; 878 regulator-max-microvolt = <3300000>; 879 regulator-name = "vcc_3v3_s3"; 880 881 regulator-state-mem { 882 regulator-on-in-suspend; 883 }; 884 }; 885 886 vddq_ddr_s0: dcdc-reg9 { 887 regulator-always-on; 888 regulator-boot-on; 889 regulator-name = "vddq_ddr_s0"; 890 891 regulator-state-mem { 892 regulator-off-in-suspend; 893 }; 894 }; 895 896 vcc_1v8_s3: dcdc-reg10 { 897 regulator-always-on; 898 regulator-boot-on; 899 regulator-min-microvolt = <1800000>; 900 regulator-max-microvolt = <1800000>; 901 regulator-name = "vcc_1v8_s3"; 902 903 regulator-state-mem { 904 regulator-on-in-suspend; 905 }; 906 }; 907 908 avcc_1v8_s0: pldo-reg1 { 909 regulator-always-on; 910 regulator-boot-on; 911 regulator-min-microvolt = <1800000>; 912 regulator-max-microvolt = <1800000>; 913 regulator-name = "avcc_1v8_s0"; 914 915 regulator-state-mem { 916 regulator-off-in-suspend; 917 }; 918 }; 919 920 vcc_1v8_s0: pldo-reg2 { 921 regulator-always-on; 922 regulator-boot-on; 923 regulator-min-microvolt = <1800000>; 924 regulator-max-microvolt = <1800000>; 925 regulator-name = "vcc_1v8_s0"; 926 927 regulator-state-mem { 928 regulator-off-in-suspend; 929 }; 930 }; 931 932 avdd_1v2_s0: pldo-reg3 { 933 regulator-always-on; 934 regulator-boot-on; 935 regulator-min-microvolt = <1200000>; 936 regulator-max-microvolt = <1200000>; 937 regulator-name = "avdd_1v2_s0"; 938 939 regulator-state-mem { 940 regulator-off-in-suspend; 941 }; 942 }; 943 944 vcc_3v3_s0: pldo-reg4 { 945 regulator-always-on; 946 regulator-boot-on; 947 regulator-min-microvolt = <3300000>; 948 regulator-max-microvolt = <3300000>; 949 regulator-ramp-delay = <12500>; 950 regulator-name = "vcc_3v3_s0"; 951 952 regulator-state-mem { 953 regulator-off-in-suspend; 954 }; 955 }; 956 957 vccio_sd_s0: pldo-reg5 { 958 regulator-always-on; 959 regulator-boot-on; 960 regulator-min-microvolt = <1800000>; 961 regulator-max-microvolt = <3300000>; 962 regulator-ramp-delay = <12500>; 963 regulator-name = "vccio_sd_s0"; 964 965 regulator-state-mem { 966 regulator-off-in-suspend; 967 }; 968 }; 969 970 pldo6_s3: pldo-reg6 { 971 regulator-always-on; 972 regulator-boot-on; 973 regulator-min-microvolt = <1800000>; 974 regulator-max-microvolt = <1800000>; 975 regulator-name = "pldo6_s3"; 976 977 regulator-state-mem { 978 regulator-on-in-suspend; 979 }; 980 }; 981 982 vdd_0v75_s3: nldo-reg1 { 983 regulator-always-on; 984 regulator-boot-on; 985 regulator-min-microvolt = <750000>; 986 regulator-max-microvolt = <750000>; 987 regulator-name = "vdd_0v75_s3"; 988 989 regulator-state-mem { 990 regulator-on-in-suspend; 991 }; 992 }; 993 994 vdd_ddr_pll_s0: nldo-reg2 { 995 regulator-always-on; 996 regulator-boot-on; 997 regulator-min-microvolt = <850000>; 998 regulator-max-microvolt = <850000>; 999 regulator-name = "vdd_ddr_pll_s0"; 1000 1001 regulator-state-mem { 1002 regulator-off-in-suspend; 1003 }; 1004 }; 1005 1006 avdd_0v75_s0: nldo-reg3 { 1007 regulator-always-on; 1008 regulator-boot-on; 1009 regulator-min-microvolt = <750000>; 1010 regulator-max-microvolt = <750000>; 1011 regulator-name = "avdd_0v75_s0"; 1012 1013 regulator-state-mem { 1014 regulator-off-in-suspend; 1015 }; 1016 }; 1017 1018 vdd_0v85_s0: nldo-reg4 { 1019 regulator-always-on; 1020 regulator-boot-on; 1021 regulator-min-microvolt = <850000>; 1022 regulator-max-microvolt = <850000>; 1023 regulator-name = "vdd_0v85_s0"; 1024 1025 regulator-state-mem { 1026 regulator-off-in-suspend; 1027 }; 1028 }; 1029 1030 vdd_0v75_s0: nldo-reg5 { 1031 regulator-always-on; 1032 regulator-boot-on; 1033 regulator-min-microvolt = <750000>; 1034 regulator-max-microvolt = <750000>; 1035 regulator-name = "vdd_0v75_s0"; 1036 1037 regulator-state-mem { 1038 regulator-off-in-suspend; 1039 }; 1040 }; 1041 }; 1042 }; 1043}; 1044 1045&tsadc { 1046 status = "okay"; 1047}; 1048 1049&u2phy0 { 1050 status = "okay"; 1051}; 1052 1053&u2phy0_otg { 1054 status = "okay"; 1055}; 1056 1057&u2phy1 { 1058 status = "okay"; 1059}; 1060 1061&u2phy1_otg { 1062 status = "okay"; 1063}; 1064 1065&u2phy2 { 1066 status = "okay"; 1067}; 1068 1069&u2phy2_host { 1070 phy-supply = <&vcc5v0_sys>; 1071 status = "okay"; 1072}; 1073 1074&u2phy3 { 1075 status = "okay"; 1076}; 1077 1078&u2phy3_host { 1079 phy-supply = <&vcc5v0_sys>; 1080 status = "okay"; 1081}; 1082 1083&uart1 { 1084 pinctrl-0 = <&uart1m0_xfer>; 1085 status = "okay"; 1086}; 1087 1088&uart2 { 1089 pinctrl-0 = <&uart2m0_xfer>; 1090 status = "okay"; 1091}; 1092 1093&uart6 { 1094 pinctrl-0 = <&uart6m0_xfer>; 1095 status = "okay"; 1096}; 1097 1098&uart7 { 1099 pinctrl-0 = <&uart7m0_xfer>; 1100 status = "okay"; 1101}; 1102 1103&uart9 { 1104 pinctrl-0 = <&uart9m0_xfer>; 1105 status = "okay"; 1106}; 1107 1108&usb_host0_ehci { 1109 status = "okay"; 1110}; 1111 1112&usb_host0_ohci { 1113 status = "okay"; 1114}; 1115 1116&usb_host0_xhci { 1117 usb-role-switch; 1118 status = "okay"; 1119 1120 port { 1121 usb_host0_xhci_drd_sw: endpoint { 1122 remote-endpoint = <&usbc0_hs>; 1123 }; 1124 }; 1125}; 1126 1127&usb_host1_ehci { 1128 status = "okay"; 1129}; 1130 1131&usb_host1_ohci { 1132 status = "okay"; 1133}; 1134 1135&usb_host1_xhci { 1136 dr_mode = "host"; 1137 status = "okay"; 1138}; 1139 1140&usbdp_phy0 { 1141 mode-switch; 1142 orientation-switch; 1143 sbu1-dc-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>; 1144 sbu2-dc-gpios = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>; 1145 status = "okay"; 1146 1147 port { 1148 #address-cells = <1>; 1149 #size-cells = <0>; 1150 1151 usbdp_phy0_typec_ss: endpoint@0 { 1152 reg = <0>; 1153 remote-endpoint = <&usbc0_ss>; 1154 }; 1155 1156 usbdp_phy0_typec_sbu: endpoint@1 { 1157 reg = <1>; 1158 remote-endpoint = <&usbc0_sbu>; 1159 }; 1160 }; 1161}; 1162 1163&usbdp_phy1 { 1164 status = "okay"; 1165}; 1166 1167&vop { 1168 status = "okay"; 1169}; 1170 1171&vop_mmu { 1172 status = "okay"; 1173}; 1174 1175&vp0 { 1176 vp0_out_hdmi0: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { 1177 reg = <ROCKCHIP_VOP2_EP_HDMI0>; 1178 remote-endpoint = <&hdmi0_in_vp0>; 1179 }; 1180}; 1181