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