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