1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2021 Rockchip Electronics Co., Ltd. 4 * 5 */ 6 7/dts-v1/; 8 9#include <dt-bindings/gpio/gpio.h> 10#include <dt-bindings/input/input.h> 11#include <dt-bindings/pinctrl/rockchip.h> 12#include <dt-bindings/usb/pd.h> 13#include "rk3588.dtsi" 14 15/ { 16 model = "Rockchip RK3588 EVB1 V10 Board"; 17 compatible = "rockchip,rk3588-evb1-v10", "rockchip,rk3588"; 18 19 aliases { 20 ethernet0 = &gmac0; 21 mmc0 = &sdhci; 22 }; 23 24 chosen { 25 stdout-path = "serial2:1500000n8"; 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-vol-up { 36 label = "Volume Up"; 37 linux,code = <KEY_VOLUMEUP>; 38 press-threshold-microvolt = <17000>; 39 }; 40 41 button-vol-down { 42 label = "Volume Down"; 43 linux,code = <KEY_VOLUMEDOWN>; 44 press-threshold-microvolt = <417000>; 45 }; 46 47 button-menu { 48 label = "Menu"; 49 linux,code = <KEY_MENU>; 50 press-threshold-microvolt = <890000>; 51 }; 52 53 button-escape { 54 label = "Escape"; 55 linux,code = <KEY_ESC>; 56 press-threshold-microvolt = <1235000>; 57 }; 58 }; 59 60 analog-sound { 61 compatible = "simple-audio-card"; 62 pinctrl-names = "default"; 63 pinctrl-0 = <&hp_detect>; 64 simple-audio-card,name = "RK3588 EVB1 Audio"; 65 simple-audio-card,aux-devs = <&_headphone>, <&_speaker>; 66 simple-audio-card,bitclock-master = <&masterdai>; 67 simple-audio-card,format = "i2s"; 68 simple-audio-card,frame-master = <&masterdai>; 69 simple-audio-card,hp-det-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>; 70 simple-audio-card,mclk-fs = <256>; 71 simple-audio-card,pin-switches = "Headphones", "Speaker"; 72 simple-audio-card,routing = 73 "Speaker Amplifier INL", "LOUT2", 74 "Speaker Amplifier INR", "ROUT2", 75 "Speaker", "Speaker Amplifier OUTL", 76 "Speaker", "Speaker Amplifier OUTR", 77 "Headphones Amplifier INL", "LOUT1", 78 "Headphones Amplifier INR", "ROUT1", 79 "Headphones", "Headphones Amplifier OUTL", 80 "Headphones", "Headphones Amplifier OUTR", 81 "LINPUT1", "Onboard Microphone", 82 "RINPUT1", "Onboard Microphone", 83 "LINPUT2", "Microphone Jack", 84 "RINPUT2", "Microphone Jack"; 85 simple-audio-card,widgets = 86 "Microphone", "Microphone Jack", 87 "Microphone", "Onboard Microphone", 88 "Headphone", "Headphones", 89 "Speaker", "Speaker"; 90 91 simple-audio-card,cpu { 92 sound-dai = <&i2s0_8ch>; 93 }; 94 95 masterdai: simple-audio-card,codec { 96 sound-dai = <&es8388>; 97 system-clock-frequency = <12288000>; 98 }; 99 }; 100 101 amp_headphone: headphone-amplifier { 102 compatible = "simple-audio-amplifier"; 103 enable-gpios = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>; 104 pinctrl-names = "default"; 105 pinctrl-0 = <&headphone_amplifier_en>; 106 sound-name-prefix = "Headphones Amplifier"; 107 }; 108 109 amp_speaker: speaker-amplifier { 110 compatible = "simple-audio-amplifier"; 111 enable-gpios = <&gpio1 RK_PD3 GPIO_ACTIVE_HIGH>; 112 pinctrl-names = "default"; 113 pinctrl-0 = <&speaker_amplifier_en>; 114 sound-name-prefix = "Speaker Amplifier"; 115 }; 116 117 backlight: backlight { 118 compatible = "pwm-backlight"; 119 power-supply = <&vcc12v_dcin>; 120 pwms = <&pwm2 0 25000 0>; 121 }; 122 123 pcie20_avdd0v85: pcie20-avdd0v85-regulator { 124 compatible = "regulator-fixed"; 125 regulator-name = "pcie20_avdd0v85"; 126 regulator-always-on; 127 regulator-boot-on; 128 regulator-min-microvolt = <850000>; 129 regulator-max-microvolt = <850000>; 130 vin-supply = <&avdd_0v85_s0>; 131 }; 132 133 pcie20_avdd1v8: pcie20-avdd1v8-regulator { 134 compatible = "regulator-fixed"; 135 regulator-name = "pcie20_avdd1v8"; 136 regulator-always-on; 137 regulator-boot-on; 138 regulator-min-microvolt = <1800000>; 139 regulator-max-microvolt = <1800000>; 140 vin-supply = <&avcc_1v8_s0>; 141 }; 142 143 pcie30_avdd0v75: pcie30-avdd0v75-regulator { 144 compatible = "regulator-fixed"; 145 regulator-name = "pcie30_avdd0v75"; 146 regulator-always-on; 147 regulator-boot-on; 148 regulator-min-microvolt = <750000>; 149 regulator-max-microvolt = <750000>; 150 vin-supply = <&avdd_0v75_s0>; 151 }; 152 153 pcie30_avdd1v8: pcie30-avdd1v8-regulator { 154 compatible = "regulator-fixed"; 155 regulator-name = "pcie30_avdd1v8"; 156 regulator-always-on; 157 regulator-boot-on; 158 regulator-min-microvolt = <1800000>; 159 regulator-max-microvolt = <1800000>; 160 vin-supply = <&avcc_1v8_s0>; 161 }; 162 163 vbus5v0_typec: vbus5v0-typec-regulator { 164 compatible = "regulator-fixed"; 165 enable-active-high; 166 gpio = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>; 167 pinctrl-names = "default"; 168 pinctrl-0 = <&typec5v_pwren>; 169 regulator-name = "vbus5v0_typec"; 170 regulator-min-microvolt = <5000000>; 171 regulator-max-microvolt = <5000000>; 172 vin-supply = <&vcc5v0_usb>; 173 }; 174 175 vcc12v_dcin: vcc12v-dcin-regulator { 176 compatible = "regulator-fixed"; 177 regulator-name = "vcc12v_dcin"; 178 regulator-always-on; 179 regulator-boot-on; 180 regulator-min-microvolt = <12000000>; 181 regulator-max-microvolt = <12000000>; 182 }; 183 184 vcc3v3_pcie30: vcc3v3-pcie30-regulator { 185 compatible = "regulator-fixed"; 186 regulator-name = "vcc3v3_pcie30"; 187 regulator-min-microvolt = <3300000>; 188 regulator-max-microvolt = <3300000>; 189 enable-active-high; 190 gpios = <&gpio3 RK_PC3 GPIO_ACTIVE_HIGH>; 191 startup-delay-us = <5000>; 192 vin-supply = <&vcc12v_dcin>; 193 pinctrl-names = "default"; 194 pinctrl-0 = <&vcc3v3_pcie30_en>; 195 }; 196 197 vcc5v0_host: vcc5v0-host-regulator { 198 compatible = "regulator-fixed"; 199 regulator-name = "vcc5v0_host"; 200 regulator-boot-on; 201 regulator-always-on; 202 regulator-min-microvolt = <5000000>; 203 regulator-max-microvolt = <5000000>; 204 enable-active-high; 205 gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>; 206 pinctrl-names = "default"; 207 pinctrl-0 = <&vcc5v0_host_en>; 208 vin-supply = <&vcc5v0_usb>; 209 }; 210 211 vcc5v0_sys: vcc5v0-sys-regulator { 212 compatible = "regulator-fixed"; 213 regulator-name = "vcc5v0_sys"; 214 regulator-always-on; 215 regulator-boot-on; 216 regulator-min-microvolt = <5000000>; 217 regulator-max-microvolt = <5000000>; 218 vin-supply = <&vcc12v_dcin>; 219 }; 220 221 vcc5v0_usbdcin: vcc5v0-usbdcin-regulator { 222 compatible = "regulator-fixed"; 223 regulator-name = "vcc5v0_usbdcin"; 224 regulator-always-on; 225 regulator-boot-on; 226 regulator-min-microvolt = <5000000>; 227 regulator-max-microvolt = <5000000>; 228 vin-supply = <&vcc12v_dcin>; 229 }; 230 231 vcc5v0_usb: vcc5v0-usb-regulator { 232 compatible = "regulator-fixed"; 233 regulator-name = "vcc5v0_usb"; 234 regulator-always-on; 235 regulator-boot-on; 236 regulator-min-microvolt = <5000000>; 237 regulator-max-microvolt = <5000000>; 238 vin-supply = <&vcc5v0_usbdcin>; 239 }; 240}; 241 242&combphy0_ps { 243 status = "okay"; 244}; 245 246&combphy2_psu { 247 status = "okay"; 248}; 249 250&cpu_b0 { 251 cpu-supply = <&vdd_cpu_big0_s0>; 252}; 253 254&cpu_b1 { 255 cpu-supply = <&vdd_cpu_big0_s0>; 256}; 257 258&cpu_b2 { 259 cpu-supply = <&vdd_cpu_big1_s0>; 260}; 261 262&cpu_b3 { 263 cpu-supply = <&vdd_cpu_big1_s0>; 264}; 265 266&cpu_l0 { 267 cpu-supply = <&vdd_cpu_lit_s0>; 268}; 269 270&cpu_l1 { 271 cpu-supply = <&vdd_cpu_lit_s0>; 272}; 273 274&cpu_l2 { 275 cpu-supply = <&vdd_cpu_lit_s0>; 276}; 277 278&cpu_l3 { 279 cpu-supply = <&vdd_cpu_lit_s0>; 280}; 281 282&gmac0 { 283 clock_in_out = "output"; 284 phy-handle = <&rgmii_phy>; 285 phy-mode = "rgmii-rxid"; 286 pinctrl-0 = <&gmac0_miim 287 &gmac0_tx_bus2 288 &gmac0_rx_bus2 289 &gmac0_rgmii_clk 290 &gmac0_rgmii_bus>; 291 pinctrl-names = "default"; 292 rx_delay = <0x00>; 293 tx_delay = <0x43>; 294 status = "okay"; 295}; 296 297&gpu { 298 mali-supply = <&vdd_gpu_s0>; 299 sram-supply = <&vdd_gpu_mem_s0>; 300 status = "okay"; 301}; 302 303&i2c2 { 304 status = "okay"; 305 306 usbc0: usb-typec@22 { 307 compatible = "fcs,fusb302"; 308 reg = <0x22>; 309 interrupt-parent = <&gpio3>; 310 interrupts = <RK_PB4 IRQ_TYPE_LEVEL_LOW>; 311 pinctrl-names = "default"; 312 pinctrl-0 = <&usbc0_int>; 313 vbus-supply = <&vbus5v0_typec>; 314 status = "okay"; 315 316 usb_con: connector { 317 compatible = "usb-c-connector"; 318 label = "USB-C"; 319 data-role = "dual"; 320 op-sink-microwatt = <1000000>; 321 power-role = "dual"; 322 sink-pdos = 323 <PDO_FIXED(5000, 1000, PDO_FIXED_USB_COMM)>; 324 source-pdos = 325 <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>; 326 try-power-role = "source"; 327 328 ports { 329 #address-cells = <1>; 330 #size-cells = <0>; 331 332 port@0 { 333 reg = <0>; 334 335 usbc0_orien_sw: endpoint { 336 remote-endpoint = <&usbdp_phy0_orientation_switch>; 337 }; 338 }; 339 340 port@1 { 341 reg = <1>; 342 343 usbc0_role_sw: endpoint { 344 remote-endpoint = <&dwc3_0_role_switch>; 345 }; 346 }; 347 348 port@2 { 349 reg = <2>; 350 351 dp_altmode_mux: endpoint { 352 remote-endpoint = <&usbdp_phy0_dp_altmode_mux>; 353 }; 354 }; 355 }; 356 }; 357 }; 358 359 hym8563: rtc@51 { 360 compatible = "haoyu,hym8563"; 361 reg = <0x51>; 362 #clock-cells = <0>; 363 clock-output-names = "hym8563"; 364 pinctrl-names = "default"; 365 pinctrl-0 = <&hym8563_int>; 366 interrupt-parent = <&gpio0>; 367 interrupts = <RK_PD4 IRQ_TYPE_LEVEL_LOW>; 368 wakeup-source; 369 }; 370}; 371 372&i2c7 { 373 status = "okay"; 374 375 es8388: audio-codec@11 { 376 compatible = "everest,es8388"; 377 reg = <0x11>; 378 clocks = <&cru I2S0_8CH_MCLKOUT>; 379 assigned-clocks = <&cru I2S0_8CH_MCLKOUT>; 380 assigned-clock-rates = <12288000>; 381 AVDD-supply = <&avcc_1v8_codec_s0>; 382 DVDD-supply = <&avcc_1v8_codec_s0>; 383 HPVDD-supply = <&vcc_3v3_s0>; 384 PVDD-supply = <&vcc_3v3_s0>; 385 #sound-dai-cells = <0>; 386 }; 387}; 388 389&i2s0_8ch { 390 pinctrl-0 = <&i2s0_lrck 391 &i2s0_mclk 392 &i2s0_sclk 393 &i2s0_sdi0 394 &i2s0_sdo0>; 395 status = "okay"; 396}; 397 398&mdio0 { 399 rgmii_phy: ethernet-phy@1 { 400 /* RTL8211F */ 401 compatible = "ethernet-phy-id001c.c916"; 402 reg = <0x1>; 403 pinctrl-names = "default"; 404 pinctrl-0 = <&rtl8211f_rst>; 405 reset-assert-us = <20000>; 406 reset-deassert-us = <100000>; 407 reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_LOW>; 408 }; 409}; 410 411&pcie2x1l1 { 412 reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>; 413 pinctrl-names = "default"; 414 pinctrl-0 = <&pcie2_1_rst>, <&rtl8111_isolate>; 415 status = "okay"; 416}; 417 418&pcie30phy { 419 status = "okay"; 420}; 421 422&pcie3x4 { 423 pinctrl-names = "default"; 424 pinctrl-0 = <&pcie3_reset>; 425 reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; 426 vpcie3v3-supply = <&vcc3v3_pcie30>; 427 status = "okay"; 428}; 429 430&pinctrl { 431 audio { 432 hp_detect: headphone-detect { 433 rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; 434 }; 435 436 headphone_amplifier_en: headphone-amplifier-en { 437 rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; 438 }; 439 440 speaker_amplifier_en: speaker-amplifier-en { 441 rockchip,pins = <1 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 442 }; 443 }; 444 445 rtl8111 { 446 rtl8111_isolate: rtl8111-isolate { 447 rockchip,pins = <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>; 448 }; 449 }; 450 451 rtl8211f { 452 rtl8211f_rst: rtl8211f-rst { 453 rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; 454 }; 455 456 }; 457 458 hym8563 { 459 hym8563_int: hym8563-int { 460 rockchip,pins = <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>; 461 }; 462 }; 463 464 pcie2 { 465 pcie2_1_rst: pcie2-1-rst { 466 rockchip,pins = <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 467 }; 468 }; 469 470 pcie3 { 471 pcie3_reset: pcie3-reset { 472 rockchip,pins = <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; 473 }; 474 475 vcc3v3_pcie30_en: vcc3v3-pcie30-en { 476 rockchip,pins = <3 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>; 477 }; 478 }; 479 480 usb { 481 vcc5v0_host_en: vcc5v0-host-en { 482 rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 483 }; 484 }; 485 486 usb-typec { 487 typec5v_pwren: typec5v-pwren { 488 rockchip,pins = <4 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>; 489 }; 490 491 usbc0_int: usbc0-int { 492 rockchip,pins = <3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>; 493 }; 494 }; 495}; 496 497&pwm2 { 498 status = "okay"; 499}; 500 501&saradc { 502 vref-supply = <&vcc_1v8_s0>; 503 status = "okay"; 504}; 505 506&sdhci { 507 bus-width = <8>; 508 no-sdio; 509 no-sd; 510 non-removable; 511 mmc-hs400-1_8v; 512 mmc-hs400-enhanced-strobe; 513 status = "okay"; 514}; 515 516&spi2 { 517 status = "okay"; 518 assigned-clocks = <&cru CLK_SPI2>; 519 assigned-clock-rates = <200000000>; 520 num-cs = <2>; 521 522 pmic@0 { 523 compatible = "rockchip,rk806"; 524 reg = <0x0>; 525 #gpio-cells = <2>; 526 gpio-controller; 527 interrupt-parent = <&gpio0>; 528 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 529 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 530 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 531 pinctrl-names = "default"; 532 spi-max-frequency = <1000000>; 533 system-power-controller; 534 535 vcc1-supply = <&vcc5v0_sys>; 536 vcc2-supply = <&vcc5v0_sys>; 537 vcc3-supply = <&vcc5v0_sys>; 538 vcc4-supply = <&vcc5v0_sys>; 539 vcc5-supply = <&vcc5v0_sys>; 540 vcc6-supply = <&vcc5v0_sys>; 541 vcc7-supply = <&vcc5v0_sys>; 542 vcc8-supply = <&vcc5v0_sys>; 543 vcc9-supply = <&vcc5v0_sys>; 544 vcc10-supply = <&vcc5v0_sys>; 545 vcc11-supply = <&vcc_2v0_pldo_s3>; 546 vcc12-supply = <&vcc5v0_sys>; 547 vcc13-supply = <&vcc5v0_sys>; 548 vcc14-supply = <&vcc_1v1_nldo_s3>; 549 vcca-supply = <&vcc5v0_sys>; 550 551 rk806_dvs1_null: dvs1-null-pins { 552 pins = "gpio_pwrctrl1"; 553 function = "pin_fun0"; 554 }; 555 556 rk806_dvs2_null: dvs2-null-pins { 557 pins = "gpio_pwrctrl2"; 558 function = "pin_fun0"; 559 }; 560 561 rk806_dvs3_null: dvs3-null-pins { 562 pins = "gpio_pwrctrl3"; 563 function = "pin_fun0"; 564 }; 565 566 567 regulators { 568 vdd_gpu_s0: dcdc-reg1 { 569 /* regulator coupling requires always-on */ 570 regulator-always-on; 571 regulator-boot-on; 572 regulator-min-microvolt = <550000>; 573 regulator-max-microvolt = <950000>; 574 regulator-ramp-delay = <12500>; 575 regulator-name = "vdd_gpu_s0"; 576 regulator-enable-ramp-delay = <400>; 577 regulator-coupled-with = <&vdd_gpu_mem_s0>; 578 regulator-coupled-max-spread = <10000>; 579 regulator-state-mem { 580 regulator-off-in-suspend; 581 }; 582 }; 583 584 vdd_npu_s0: dcdc-reg2 { 585 regulator-always-on; 586 regulator-boot-on; 587 regulator-min-microvolt = <550000>; 588 regulator-max-microvolt = <950000>; 589 regulator-ramp-delay = <12500>; 590 regulator-name = "vdd_npu_s0"; 591 regulator-state-mem { 592 regulator-off-in-suspend; 593 }; 594 }; 595 596 vdd_log_s0: dcdc-reg3 { 597 regulator-always-on; 598 regulator-boot-on; 599 regulator-min-microvolt = <675000>; 600 regulator-max-microvolt = <750000>; 601 regulator-ramp-delay = <12500>; 602 regulator-name = "vdd_log_s0"; 603 regulator-state-mem { 604 regulator-off-in-suspend; 605 regulator-suspend-microvolt = <750000>; 606 }; 607 }; 608 609 vdd_vdenc_s0: dcdc-reg4 { 610 regulator-always-on; 611 regulator-boot-on; 612 regulator-min-microvolt = <550000>; 613 regulator-max-microvolt = <950000>; 614 regulator-ramp-delay = <12500>; 615 regulator-name = "vdd_vdenc_s0"; 616 regulator-state-mem { 617 regulator-off-in-suspend; 618 }; 619 620 }; 621 622 vdd_gpu_mem_s0: dcdc-reg5 { 623 /* regulator coupling requires always-on */ 624 regulator-always-on; 625 regulator-boot-on; 626 regulator-min-microvolt = <675000>; 627 regulator-max-microvolt = <950000>; 628 regulator-ramp-delay = <12500>; 629 regulator-enable-ramp-delay = <400>; 630 regulator-name = "vdd_gpu_mem_s0"; 631 regulator-coupled-with = <&vdd_gpu_s0>; 632 regulator-coupled-max-spread = <10000>; 633 regulator-state-mem { 634 regulator-off-in-suspend; 635 }; 636 637 }; 638 639 vdd_npu_mem_s0: dcdc-reg6 { 640 regulator-always-on; 641 regulator-boot-on; 642 regulator-min-microvolt = <675000>; 643 regulator-max-microvolt = <950000>; 644 regulator-ramp-delay = <12500>; 645 regulator-name = "vdd_npu_mem_s0"; 646 regulator-state-mem { 647 regulator-off-in-suspend; 648 }; 649 650 }; 651 652 vcc_2v0_pldo_s3: dcdc-reg7 { 653 regulator-always-on; 654 regulator-boot-on; 655 regulator-min-microvolt = <2000000>; 656 regulator-max-microvolt = <2000000>; 657 regulator-ramp-delay = <12500>; 658 regulator-name = "vdd_2v0_pldo_s3"; 659 regulator-state-mem { 660 regulator-on-in-suspend; 661 regulator-suspend-microvolt = <2000000>; 662 }; 663 }; 664 665 vdd_vdenc_mem_s0: dcdc-reg8 { 666 regulator-always-on; 667 regulator-boot-on; 668 regulator-min-microvolt = <675000>; 669 regulator-max-microvolt = <950000>; 670 regulator-ramp-delay = <12500>; 671 regulator-name = "vdd_vdenc_mem_s0"; 672 regulator-state-mem { 673 regulator-off-in-suspend; 674 }; 675 }; 676 677 vdd2_ddr_s3: dcdc-reg9 { 678 regulator-always-on; 679 regulator-boot-on; 680 regulator-name = "vdd2_ddr_s3"; 681 regulator-state-mem { 682 regulator-on-in-suspend; 683 }; 684 }; 685 686 vcc_1v1_nldo_s3: dcdc-reg10 { 687 regulator-always-on; 688 regulator-boot-on; 689 regulator-min-microvolt = <1100000>; 690 regulator-max-microvolt = <1100000>; 691 regulator-ramp-delay = <12500>; 692 regulator-name = "vcc_1v1_nldo_s3"; 693 regulator-state-mem { 694 regulator-on-in-suspend; 695 regulator-suspend-microvolt = <1100000>; 696 }; 697 }; 698 699 avcc_1v8_s0: pldo-reg1 { 700 regulator-always-on; 701 regulator-boot-on; 702 regulator-min-microvolt = <1800000>; 703 regulator-max-microvolt = <1800000>; 704 regulator-ramp-delay = <12500>; 705 regulator-name = "avcc_1v8_s0"; 706 regulator-state-mem { 707 regulator-off-in-suspend; 708 }; 709 }; 710 711 vdd1_1v8_ddr_s3: pldo-reg2 { 712 regulator-always-on; 713 regulator-boot-on; 714 regulator-min-microvolt = <1800000>; 715 regulator-max-microvolt = <1800000>; 716 regulator-ramp-delay = <12500>; 717 regulator-name = "vdd1_1v8_ddr_s3"; 718 regulator-state-mem { 719 regulator-on-in-suspend; 720 regulator-suspend-microvolt = <1800000>; 721 }; 722 }; 723 724 avcc_1v8_codec_s0: pldo-reg3 { 725 regulator-always-on; 726 regulator-boot-on; 727 regulator-min-microvolt = <1800000>; 728 regulator-max-microvolt = <1800000>; 729 regulator-ramp-delay = <12500>; 730 regulator-name = "avcc_1v8_codec_s0"; 731 regulator-state-mem { 732 regulator-off-in-suspend; 733 }; 734 }; 735 736 vcc_3v3_s3: pldo-reg4 { 737 regulator-always-on; 738 regulator-boot-on; 739 regulator-min-microvolt = <3300000>; 740 regulator-max-microvolt = <3300000>; 741 regulator-ramp-delay = <12500>; 742 regulator-name = "vcc_3v3_s3"; 743 regulator-state-mem { 744 regulator-on-in-suspend; 745 regulator-suspend-microvolt = <3300000>; 746 }; 747 }; 748 749 vccio_sd_s0: pldo-reg5 { 750 regulator-always-on; 751 regulator-boot-on; 752 regulator-min-microvolt = <1800000>; 753 regulator-max-microvolt = <3300000>; 754 regulator-ramp-delay = <12500>; 755 regulator-name = "vccio_sd_s0"; 756 regulator-state-mem { 757 regulator-off-in-suspend; 758 }; 759 }; 760 761 vccio_1v8_s3: pldo-reg6 { 762 regulator-always-on; 763 regulator-boot-on; 764 regulator-min-microvolt = <1800000>; 765 regulator-max-microvolt = <1800000>; 766 regulator-ramp-delay = <12500>; 767 regulator-name = "vccio_1v8_s3"; 768 regulator-state-mem { 769 regulator-on-in-suspend; 770 regulator-suspend-microvolt = <1800000>; 771 }; 772 }; 773 774 vdd_0v75_s3: nldo-reg1 { 775 regulator-always-on; 776 regulator-boot-on; 777 regulator-min-microvolt = <750000>; 778 regulator-max-microvolt = <750000>; 779 regulator-ramp-delay = <12500>; 780 regulator-name = "vdd_0v75_s3"; 781 regulator-state-mem { 782 regulator-on-in-suspend; 783 regulator-suspend-microvolt = <750000>; 784 }; 785 }; 786 787 vdd2l_0v9_ddr_s3: nldo-reg2 { 788 regulator-always-on; 789 regulator-boot-on; 790 regulator-min-microvolt = <900000>; 791 regulator-max-microvolt = <900000>; 792 regulator-name = "vdd2l_0v9_ddr_s3"; 793 regulator-state-mem { 794 regulator-on-in-suspend; 795 regulator-suspend-microvolt = <900000>; 796 }; 797 }; 798 799 vdd_0v75_hdmi_edp_s0: nldo-reg3 { 800 regulator-always-on; 801 regulator-boot-on; 802 regulator-min-microvolt = <750000>; 803 regulator-max-microvolt = <750000>; 804 regulator-name = "vdd_0v75_hdmi_edp_s0"; 805 regulator-state-mem { 806 regulator-off-in-suspend; 807 }; 808 }; 809 810 avdd_0v75_s0: nldo-reg4 { 811 regulator-always-on; 812 regulator-boot-on; 813 regulator-min-microvolt = <750000>; 814 regulator-max-microvolt = <750000>; 815 regulator-name = "avdd_0v75_s0"; 816 regulator-state-mem { 817 regulator-off-in-suspend; 818 }; 819 }; 820 821 vdd_0v85_s0: nldo-reg5 { 822 regulator-always-on; 823 regulator-boot-on; 824 regulator-min-microvolt = <850000>; 825 regulator-max-microvolt = <850000>; 826 regulator-name = "vdd_0v85_s0"; 827 regulator-state-mem { 828 regulator-off-in-suspend; 829 }; 830 }; 831 }; 832 }; 833 834 pmic@1 { 835 compatible = "rockchip,rk806"; 836 reg = <0x01>; 837 #gpio-cells = <2>; 838 gpio-controller; 839 interrupt-parent = <&gpio0>; 840 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 841 pinctrl-0 = <&rk806_slave_dvs1_null>, <&rk806_slave_dvs2_null>, 842 <&rk806_slave_dvs3_null>; 843 pinctrl-names = "default"; 844 spi-max-frequency = <1000000>; 845 846 vcc1-supply = <&vcc5v0_sys>; 847 vcc2-supply = <&vcc5v0_sys>; 848 vcc3-supply = <&vcc5v0_sys>; 849 vcc4-supply = <&vcc5v0_sys>; 850 vcc5-supply = <&vcc5v0_sys>; 851 vcc6-supply = <&vcc5v0_sys>; 852 vcc7-supply = <&vcc5v0_sys>; 853 vcc8-supply = <&vcc5v0_sys>; 854 vcc9-supply = <&vcc5v0_sys>; 855 vcc10-supply = <&vcc5v0_sys>; 856 vcc11-supply = <&vcc_2v0_pldo_s3>; 857 vcc12-supply = <&vcc5v0_sys>; 858 vcc13-supply = <&vcc_1v1_nldo_s3>; 859 vcc14-supply = <&vcc_2v0_pldo_s3>; 860 vcca-supply = <&vcc5v0_sys>; 861 862 rk806_slave_dvs1_null: dvs1-null-pins { 863 pins = "gpio_pwrctrl1"; 864 function = "pin_fun0"; 865 }; 866 867 rk806_slave_dvs2_null: dvs2-null-pins { 868 pins = "gpio_pwrctrl2"; 869 function = "pin_fun0"; 870 }; 871 872 rk806_slave_dvs3_null: dvs3-null-pins { 873 pins = "gpio_pwrctrl3"; 874 function = "pin_fun0"; 875 }; 876 877 regulators { 878 vdd_cpu_big1_s0: dcdc-reg1 { 879 regulator-always-on; 880 regulator-boot-on; 881 regulator-coupled-with = <&vdd_cpu_big1_mem_s0>; 882 regulator-coupled-max-spread = <10000>; 883 regulator-min-microvolt = <550000>; 884 regulator-max-microvolt = <1050000>; 885 regulator-ramp-delay = <12500>; 886 regulator-name = "vdd_cpu_big1_s0"; 887 regulator-state-mem { 888 regulator-off-in-suspend; 889 }; 890 }; 891 892 vdd_cpu_big0_s0: dcdc-reg2 { 893 regulator-always-on; 894 regulator-boot-on; 895 regulator-coupled-with = <&vdd_cpu_big0_mem_s0>; 896 regulator-coupled-max-spread = <10000>; 897 regulator-min-microvolt = <550000>; 898 regulator-max-microvolt = <1050000>; 899 regulator-ramp-delay = <12500>; 900 regulator-name = "vdd_cpu_big0_s0"; 901 regulator-state-mem { 902 regulator-off-in-suspend; 903 }; 904 }; 905 906 vdd_cpu_lit_s0: dcdc-reg3 { 907 regulator-always-on; 908 regulator-boot-on; 909 regulator-coupled-with = <&vdd_cpu_lit_mem_s0>; 910 regulator-coupled-max-spread = <10000>; 911 regulator-min-microvolt = <550000>; 912 regulator-max-microvolt = <950000>; 913 regulator-ramp-delay = <12500>; 914 regulator-name = "vdd_cpu_lit_s0"; 915 regulator-state-mem { 916 regulator-off-in-suspend; 917 }; 918 }; 919 920 vcc_3v3_s0: dcdc-reg4 { 921 regulator-always-on; 922 regulator-boot-on; 923 regulator-min-microvolt = <3300000>; 924 regulator-max-microvolt = <3300000>; 925 regulator-ramp-delay = <12500>; 926 regulator-name = "vcc_3v3_s0"; 927 regulator-state-mem { 928 regulator-off-in-suspend; 929 }; 930 }; 931 932 vdd_cpu_big1_mem_s0: dcdc-reg5 { 933 regulator-always-on; 934 regulator-boot-on; 935 regulator-coupled-with = <&vdd_cpu_big1_s0>; 936 regulator-coupled-max-spread = <10000>; 937 regulator-min-microvolt = <675000>; 938 regulator-max-microvolt = <1050000>; 939 regulator-ramp-delay = <12500>; 940 regulator-name = "vdd_cpu_big1_mem_s0"; 941 regulator-state-mem { 942 regulator-off-in-suspend; 943 }; 944 }; 945 946 947 vdd_cpu_big0_mem_s0: dcdc-reg6 { 948 regulator-always-on; 949 regulator-boot-on; 950 regulator-coupled-with = <&vdd_cpu_big0_s0>; 951 regulator-coupled-max-spread = <10000>; 952 regulator-min-microvolt = <675000>; 953 regulator-max-microvolt = <1050000>; 954 regulator-ramp-delay = <12500>; 955 regulator-name = "vdd_cpu_big0_mem_s0"; 956 regulator-state-mem { 957 regulator-off-in-suspend; 958 }; 959 }; 960 961 vcc_1v8_s0: dcdc-reg7 { 962 regulator-always-on; 963 regulator-boot-on; 964 regulator-min-microvolt = <1800000>; 965 regulator-max-microvolt = <1800000>; 966 regulator-ramp-delay = <12500>; 967 regulator-name = "vcc_1v8_s0"; 968 regulator-state-mem { 969 regulator-off-in-suspend; 970 }; 971 }; 972 973 vdd_cpu_lit_mem_s0: dcdc-reg8 { 974 regulator-always-on; 975 regulator-boot-on; 976 regulator-coupled-with = <&vdd_cpu_lit_s0>; 977 regulator-coupled-max-spread = <10000>; 978 regulator-min-microvolt = <675000>; 979 regulator-max-microvolt = <950000>; 980 regulator-ramp-delay = <12500>; 981 regulator-name = "vdd_cpu_lit_mem_s0"; 982 regulator-state-mem { 983 regulator-off-in-suspend; 984 }; 985 }; 986 987 vddq_ddr_s0: dcdc-reg9 { 988 regulator-always-on; 989 regulator-boot-on; 990 regulator-name = "vddq_ddr_s0"; 991 regulator-state-mem { 992 regulator-off-in-suspend; 993 }; 994 }; 995 996 vdd_ddr_s0: dcdc-reg10 { 997 regulator-always-on; 998 regulator-boot-on; 999 regulator-min-microvolt = <675000>; 1000 regulator-max-microvolt = <900000>; 1001 regulator-ramp-delay = <12500>; 1002 regulator-name = "vdd_ddr_s0"; 1003 regulator-state-mem { 1004 regulator-off-in-suspend; 1005 }; 1006 }; 1007 1008 vcc_1v8_cam_s0: pldo-reg1 { 1009 regulator-always-on; 1010 regulator-boot-on; 1011 regulator-min-microvolt = <1800000>; 1012 regulator-max-microvolt = <1800000>; 1013 regulator-ramp-delay = <12500>; 1014 regulator-name = "vcc_1v8_cam_s0"; 1015 regulator-state-mem { 1016 regulator-off-in-suspend; 1017 }; 1018 }; 1019 1020 avdd1v8_ddr_pll_s0: pldo-reg2 { 1021 regulator-always-on; 1022 regulator-boot-on; 1023 regulator-min-microvolt = <1800000>; 1024 regulator-max-microvolt = <1800000>; 1025 regulator-ramp-delay = <12500>; 1026 regulator-name = "avdd1v8_ddr_pll_s0"; 1027 regulator-state-mem { 1028 regulator-off-in-suspend; 1029 }; 1030 }; 1031 1032 vdd_1v8_pll_s0: pldo-reg3 { 1033 regulator-always-on; 1034 regulator-boot-on; 1035 regulator-min-microvolt = <1800000>; 1036 regulator-max-microvolt = <1800000>; 1037 regulator-ramp-delay = <12500>; 1038 regulator-name = "vdd_1v8_pll_s0"; 1039 regulator-state-mem { 1040 regulator-off-in-suspend; 1041 }; 1042 }; 1043 1044 vcc_3v3_sd_s0: pldo-reg4 { 1045 regulator-always-on; 1046 regulator-boot-on; 1047 regulator-min-microvolt = <3300000>; 1048 regulator-max-microvolt = <3300000>; 1049 regulator-ramp-delay = <12500>; 1050 regulator-name = "vcc_3v3_sd_s0"; 1051 regulator-state-mem { 1052 regulator-off-in-suspend; 1053 }; 1054 }; 1055 1056 vcc_2v8_cam_s0: pldo-reg5 { 1057 regulator-always-on; 1058 regulator-boot-on; 1059 regulator-min-microvolt = <2800000>; 1060 regulator-max-microvolt = <2800000>; 1061 regulator-ramp-delay = <12500>; 1062 regulator-name = "vcc_2v8_cam_s0"; 1063 regulator-state-mem { 1064 regulator-off-in-suspend; 1065 }; 1066 }; 1067 1068 pldo6_s3: pldo-reg6 { 1069 regulator-always-on; 1070 regulator-boot-on; 1071 regulator-min-microvolt = <1800000>; 1072 regulator-max-microvolt = <1800000>; 1073 regulator-name = "pldo6_s3"; 1074 regulator-state-mem { 1075 regulator-on-in-suspend; 1076 regulator-suspend-microvolt = <1800000>; 1077 }; 1078 }; 1079 1080 vdd_0v75_pll_s0: nldo-reg1 { 1081 regulator-always-on; 1082 regulator-boot-on; 1083 regulator-min-microvolt = <750000>; 1084 regulator-max-microvolt = <750000>; 1085 regulator-ramp-delay = <12500>; 1086 regulator-name = "vdd_0v75_pll_s0"; 1087 regulator-state-mem { 1088 regulator-off-in-suspend; 1089 }; 1090 }; 1091 1092 vdd_ddr_pll_s0: nldo-reg2 { 1093 regulator-always-on; 1094 regulator-boot-on; 1095 regulator-min-microvolt = <850000>; 1096 regulator-max-microvolt = <850000>; 1097 regulator-name = "vdd_ddr_pll_s0"; 1098 regulator-state-mem { 1099 regulator-off-in-suspend; 1100 }; 1101 }; 1102 1103 avdd_0v85_s0: nldo-reg3 { 1104 regulator-always-on; 1105 regulator-boot-on; 1106 regulator-min-microvolt = <850000>; 1107 regulator-max-microvolt = <850000>; 1108 regulator-ramp-delay = <12500>; 1109 regulator-name = "avdd_0v85_s0"; 1110 regulator-state-mem { 1111 regulator-off-in-suspend; 1112 }; 1113 }; 1114 1115 avdd_1v2_cam_s0: nldo-reg4 { 1116 regulator-always-on; 1117 regulator-boot-on; 1118 regulator-min-microvolt = <1200000>; 1119 regulator-max-microvolt = <1200000>; 1120 regulator-ramp-delay = <12500>; 1121 regulator-name = "avdd_1v2_cam_s0"; 1122 regulator-state-mem { 1123 regulator-off-in-suspend; 1124 }; 1125 }; 1126 1127 avdd_1v2_s0: nldo-reg5 { 1128 regulator-always-on; 1129 regulator-boot-on; 1130 regulator-min-microvolt = <1200000>; 1131 regulator-max-microvolt = <1200000>; 1132 regulator-ramp-delay = <12500>; 1133 regulator-name = "avdd_1v2_s0"; 1134 regulator-state-mem { 1135 regulator-off-in-suspend; 1136 }; 1137 }; 1138 }; 1139 }; 1140}; 1141 1142&sata0 { 1143 status = "okay"; 1144}; 1145 1146&tsadc { 1147 status = "okay"; 1148}; 1149 1150&u2phy0 { 1151 status = "okay"; 1152}; 1153 1154&u2phy0_otg { 1155 status = "okay"; 1156}; 1157 1158&u2phy1 { 1159 status = "okay"; 1160}; 1161 1162&u2phy1_otg { 1163 status = "okay"; 1164}; 1165 1166&u2phy2 { 1167 status = "okay"; 1168}; 1169 1170&u2phy2_host { 1171 phy-supply = <&vcc5v0_host>; 1172 status = "okay"; 1173}; 1174 1175&u2phy3 { 1176 status = "okay"; 1177}; 1178 1179&u2phy3_host { 1180 phy-supply = <&vcc5v0_host>; 1181 status = "okay"; 1182}; 1183 1184&uart2 { 1185 pinctrl-0 = <&uart2m0_xfer>; 1186 status = "okay"; 1187}; 1188 1189&usb_host0_ehci { 1190 status = "okay"; 1191}; 1192 1193&usb_host0_ohci { 1194 status = "okay"; 1195}; 1196 1197&usb_host1_ehci { 1198 status = "okay"; 1199}; 1200 1201&usb_host1_ohci { 1202 status = "okay"; 1203}; 1204 1205&usbdp_phy0 { 1206 mode-switch; 1207 orientation-switch; 1208 sbu1-dc-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>; 1209 sbu2-dc-gpios = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>; 1210 status = "okay"; 1211 1212 port { 1213 #address-cells = <1>; 1214 #size-cells = <0>; 1215 1216 usbdp_phy0_orientation_switch: endpoint@0 { 1217 reg = <0>; 1218 remote-endpoint = <&usbc0_orien_sw>; 1219 }; 1220 1221 usbdp_phy0_dp_altmode_mux: endpoint@1 { 1222 reg = <1>; 1223 remote-endpoint = <&dp_altmode_mux>; 1224 }; 1225 }; 1226}; 1227 1228&usbdp_phy1 { 1229 /* 1230 * USBDP PHY1 is wired to a female USB3 Type-A connector. Additionally 1231 * the differential pairs 2+3 and the aux channel are wired to a RTD2166, 1232 * which converts the DP signal into VGA. This is exposed on the 1233 * board via a female VGA connector. 1234 */ 1235 rockchip,dp-lane-mux = <2 3>; 1236 status = "okay"; 1237}; 1238 1239&usb_host0_xhci { 1240 dr_mode = "otg"; 1241 usb-role-switch; 1242 status = "okay"; 1243 1244 port { 1245 #address-cells = <1>; 1246 #size-cells = <0>; 1247 1248 dwc3_0_role_switch: endpoint@0 { 1249 reg = <0>; 1250 remote-endpoint = <&usbc0_role_sw>; 1251 }; 1252 }; 1253}; 1254 1255&usb_host1_xhci { 1256 dr_mode = "host"; 1257 status = "okay"; 1258}; 1259