1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2024 Rockchip Electronics Co., Ltd. 4 * 5 */ 6 7/dts-v1/; 8 9#include <dt-bindings/gpio/gpio.h> 10#include <dt-bindings/leds/common.h> 11#include <dt-bindings/pinctrl/rockchip.h> 12#include <dt-bindings/pwm/pwm.h> 13#include <dt-bindings/soc/rockchip,vop2.h> 14#include <dt-bindings/usb/pd.h> 15#include "rk3576.dtsi" 16 17/ { 18 model = "ArmSoM Sige5"; 19 compatible = "armsom,sige5", "rockchip,rk3576"; 20 21 aliases { 22 ethernet0 = &gmac0; 23 ethernet1 = &gmac1; 24 }; 25 26 chosen { 27 stdout-path = "serial0:1500000n8"; 28 }; 29 30 hdmi-con { 31 compatible = "hdmi-connector"; 32 type = "a"; 33 34 port { 35 hdmi_con_in: endpoint { 36 remote-endpoint = <&hdmi_out_con>; 37 }; 38 }; 39 }; 40 41 leds: leds { 42 compatible = "gpio-leds"; 43 44 green_led: green-led { 45 color = <LED_COLOR_ID_GREEN>; 46 function = LED_FUNCTION_HEARTBEAT; 47 gpios = <&gpio4 RK_PB2 GPIO_ACTIVE_HIGH>; 48 linux,default-trigger = "heartbeat"; 49 }; 50 51 red_led: red-led { 52 color = <LED_COLOR_ID_RED>; 53 function = LED_FUNCTION_STATUS; 54 gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>; 55 linux,default-trigger = "default-on"; 56 }; 57 }; 58 59 es8388_sound: es8388-sound { 60 compatible = "simple-audio-card"; 61 simple-audio-card,format = "i2s"; 62 simple-audio-card,mclk-fs = <256>; 63 simple-audio-card,name = "On-board Analog ES8388"; 64 simple-audio-card,widgets = "Microphone", "Headphone Mic", 65 "Microphone", "Mic Pads", 66 "Headphone", "Headphone", 67 "Line Out", "Line Out"; 68 simple-audio-card,routing = "Headphone", "LOUT1", 69 "Headphone", "ROUT1", 70 "Line Out", "LOUT2", 71 "Line Out", "ROUT2", 72 "RINPUT1", "Headphone Mic", 73 "LINPUT2", "Mic Pads", 74 "RINPUT2", "Mic Pads"; 75 simple-audio-card,pin-switches = "Headphone", "Line Out"; 76 77 simple-audio-card,cpu { 78 sound-dai = <&sai1>; 79 }; 80 81 simple-audio-card,codec { 82 sound-dai = <&es8388>; 83 system-clock-frequency = <12288000>; 84 }; 85 }; 86 87 vcc_12v0_dcin: regulator-vcc-12v0-dcin { 88 compatible = "regulator-fixed"; 89 regulator-name = "vcc_12v0_dcin"; 90 regulator-always-on; 91 regulator-boot-on; 92 regulator-min-microvolt = <12000000>; 93 regulator-max-microvolt = <12000000>; 94 }; 95 96 vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 { 97 compatible = "regulator-fixed"; 98 regulator-name = "vcc_1v1_nldo_s3"; 99 regulator-boot-on; 100 regulator-always-on; 101 regulator-min-microvolt = <1100000>; 102 regulator-max-microvolt = <1100000>; 103 vin-supply = <&vcc_5v0_sys>; 104 }; 105 106 vcc_1v2_ufs_vccq_s0: regulator-vcc-1v2-ufs-vccq-s0 { 107 compatible = "regulator-fixed"; 108 regulator-name = "vcc_1v2_ufs_vccq_s0"; 109 regulator-boot-on; 110 regulator-always-on; 111 regulator-min-microvolt = <1200000>; 112 regulator-max-microvolt = <1200000>; 113 vin-supply = <&vcc_5v0_sys>; 114 }; 115 116 vcc_1v8_s0: regulator-vcc-1v8-s0 { 117 compatible = "regulator-fixed"; 118 regulator-name = "vcc_1v8_s0"; 119 regulator-boot-on; 120 regulator-always-on; 121 regulator-min-microvolt = <1800000>; 122 regulator-max-microvolt = <1800000>; 123 vin-supply = <&vcc_1v8_s3>; 124 }; 125 126 vcc_1v8_ufs_vccq2_s0: regulator-vcc-1v8-ufs-vccq2-s0 { 127 compatible = "regulator-fixed"; 128 regulator-name = "vcc_1v8_ufs_vccq2_s0"; 129 regulator-boot-on; 130 regulator-always-on; 131 regulator-min-microvolt = <1800000>; 132 regulator-max-microvolt = <1800000>; 133 vin-supply = <&vcc_1v8_s3>; 134 }; 135 136 vcc_2v0_pldo_s3: regulator-vcc-2v0-pldo-s3 { 137 compatible = "regulator-fixed"; 138 regulator-name = "vcc_2v0_pldo_s3"; 139 regulator-boot-on; 140 regulator-always-on; 141 regulator-min-microvolt = <2000000>; 142 regulator-max-microvolt = <2000000>; 143 vin-supply = <&vcc_5v0_sys>; 144 }; 145 146 vcc_3v3_pcie: regulator-vcc-3v3-pcie { 147 compatible = "regulator-fixed"; 148 pinctrl-names = "default"; 149 pinctrl-0 = <&pcie_pwr_en>; 150 regulator-name = "vcc_3v3_pcie"; 151 regulator-min-microvolt = <3300000>; 152 regulator-max-microvolt = <3300000>; 153 enable-active-high; 154 gpio = <&gpio3 RK_PD6 GPIO_ACTIVE_HIGH>; 155 startup-delay-us = <5000>; 156 vin-supply = <&vcc_5v0_sys>; 157 }; 158 159 vcc_3v3_rtc_s5: regulator-vcc-3v3-rtc-s5 { 160 compatible = "regulator-fixed"; 161 regulator-name = "vcc_3v3_rtc_s5"; 162 regulator-boot-on; 163 regulator-always-on; 164 regulator-min-microvolt = <3300000>; 165 regulator-max-microvolt = <3300000>; 166 vin-supply = <&vcc_5v0_sys>; 167 }; 168 169 vcc_3v3_s0: regulator-vcc-3v3-s0 { 170 compatible = "regulator-fixed"; 171 regulator-name = "vcc_3v3_s0"; 172 regulator-boot-on; 173 regulator-always-on; 174 regulator-min-microvolt = <3300000>; 175 regulator-max-microvolt = <3300000>; 176 vin-supply = <&vcc_3v3_s3>; 177 }; 178 179 vcc_5v0_sys: regulator-vcc-5v0-sys { 180 compatible = "regulator-fixed"; 181 regulator-name = "vcc_5v0_sys"; 182 regulator-always-on; 183 regulator-boot-on; 184 regulator-min-microvolt = <5000000>; 185 regulator-max-microvolt = <5000000>; 186 vin-supply = <&vcc_12v0_dcin>; 187 }; 188 189 vcc_5v0_device: regulator-vcc-5v0-device { 190 compatible = "regulator-fixed"; 191 regulator-name = "vcc_5v0_device"; 192 regulator-always-on; 193 regulator-boot-on; 194 regulator-min-microvolt = <5000000>; 195 regulator-max-microvolt = <5000000>; 196 vin-supply = <&vcc_12v0_dcin>; 197 }; 198 199 vcc_5v0_typec0: regulator-vcc-5v0-typec0 { 200 compatible = "regulator-fixed"; 201 enable-active-high; 202 gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>; 203 pinctrl-names = "default"; 204 pinctrl-0 = <&usb_otg0_pwren>; 205 regulator-name = "vcc_5v0_typec0"; 206 regulator-min-microvolt = <5000000>; 207 regulator-max-microvolt = <5000000>; 208 vin-supply = <&vcc_5v0_device>; 209 }; 210 211 vcc_5v0_usbhost: regulator-vcc-5v0-usbhost { 212 compatible = "regulator-fixed"; 213 enable-active-high; 214 gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>; 215 pinctrl-names = "default"; 216 pinctrl-0 = <&usb_host_pwren>; 217 regulator-name = "vcc_5v0_usbhost"; 218 regulator-min-microvolt = <5000000>; 219 regulator-max-microvolt = <5000000>; 220 vin-supply = <&vcc_5v0_device>; 221 }; 222 223 vcc_3v3_ufs_s0: regulator-vcc-ufs-s0 { 224 compatible = "regulator-fixed"; 225 regulator-name = "vcc_3v3_ufs_s0"; 226 regulator-boot-on; 227 regulator-always-on; 228 regulator-min-microvolt = <3300000>; 229 regulator-max-microvolt = <3300000>; 230 vin-supply = <&vcc_5v0_sys>; 231 }; 232 233 sdio_pwrseq: sdio-pwrseq { 234 compatible = "mmc-pwrseq-simple"; 235 clocks = <&hym8563>; 236 clock-names = "ext_clock"; 237 pinctrl-names = "default"; 238 pinctrl-0 = <&wifi_reg_on>; 239 reset-gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>; 240 }; 241}; 242 243&combphy1_psu { 244 status = "okay"; 245}; 246 247&combphy0_ps { 248 status = "okay"; 249}; 250 251&cpu_b0 { 252 cpu-supply = <&vdd_cpu_big_s0>; 253}; 254 255&cpu_b1 { 256 cpu-supply = <&vdd_cpu_big_s0>; 257}; 258 259&cpu_b2 { 260 cpu-supply = <&vdd_cpu_big_s0>; 261}; 262 263&cpu_b3 { 264 cpu-supply = <&vdd_cpu_big_s0>; 265}; 266 267&cpu_l0 { 268 cpu-supply = <&vdd_cpu_lit_s0>; 269}; 270 271&cpu_l1 { 272 cpu-supply = <&vdd_cpu_lit_s0>; 273}; 274 275&cpu_l2 { 276 cpu-supply = <&vdd_cpu_lit_s0>; 277}; 278 279&cpu_l3 { 280 cpu-supply = <&vdd_cpu_lit_s0>; 281}; 282 283&gmac0 { 284 phy-mode = "rgmii-id"; 285 clock_in_out = "output"; 286 phy-handle = <&rgmii_phy0>; 287 pinctrl-names = "default"; 288 pinctrl-0 = <ð0m0_miim 289 ð0m0_tx_bus2 290 ð0m0_rx_bus2 291 ð0m0_rgmii_clk 292 ð0m0_rgmii_bus>; 293 status = "okay"; 294}; 295 296&gmac1 { 297 phy-mode = "rgmii-id"; 298 clock_in_out = "output"; 299 phy-handle = <&rgmii_phy1>; 300 pinctrl-names = "default"; 301 pinctrl-0 = <ð1m0_miim 302 ð1m0_tx_bus2 303 ð1m0_rx_bus2 304 ð1m0_rgmii_clk 305 ð1m0_rgmii_bus 306 ðm0_clk1_25m_out>; 307 status = "okay"; 308}; 309 310&gpu { 311 mali-supply = <&vdd_gpu_s0>; 312 status = "okay"; 313}; 314 315&hdmi { 316 status = "okay"; 317}; 318 319&hdmi_in { 320 hdmi_in_vp0: endpoint { 321 remote-endpoint = <&vp0_out_hdmi>; 322 }; 323}; 324 325&hdmi_out { 326 hdmi_out_con: endpoint { 327 remote-endpoint = <&hdmi_con_in>; 328 }; 329}; 330 331&hdmi_sound { 332 status = "okay"; 333}; 334 335&hdptxphy { 336 status = "okay"; 337}; 338 339&i2c1 { 340 status = "okay"; 341 342 pmic@23 { 343 compatible = "rockchip,rk806"; 344 reg = <0x23>; 345 346 interrupt-parent = <&gpio0>; 347 interrupts = <6 IRQ_TYPE_LEVEL_LOW>; 348 349 pinctrl-names = "default"; 350 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 351 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 352 353 system-power-controller; 354 355 vcc1-supply = <&vcc_5v0_sys>; 356 vcc2-supply = <&vcc_5v0_sys>; 357 vcc3-supply = <&vcc_5v0_sys>; 358 vcc4-supply = <&vcc_5v0_sys>; 359 vcc5-supply = <&vcc_5v0_sys>; 360 vcc6-supply = <&vcc_5v0_sys>; 361 vcc7-supply = <&vcc_5v0_sys>; 362 vcc8-supply = <&vcc_5v0_sys>; 363 vcc9-supply = <&vcc_5v0_sys>; 364 vcc10-supply = <&vcc_5v0_sys>; 365 vcc11-supply = <&vcc_2v0_pldo_s3>; 366 vcc12-supply = <&vcc_5v0_sys>; 367 vcc13-supply = <&vcc_1v1_nldo_s3>; 368 vcc14-supply = <&vcc_1v1_nldo_s3>; 369 vcca-supply = <&vcc_5v0_sys>; 370 371 gpio-controller; 372 #gpio-cells = <2>; 373 374 rk806_dvs1_null: dvs1-null-pins { 375 pins = "gpio_pwrctrl1"; 376 function = "pin_fun0"; 377 }; 378 379 rk806_dvs2_null: dvs2-null-pins { 380 pins = "gpio_pwrctrl2"; 381 function = "pin_fun0"; 382 }; 383 384 rk806_dvs3_null: dvs3-null-pins { 385 pins = "gpio_pwrctrl3"; 386 function = "pin_fun0"; 387 }; 388 389 rk806_dvs1_slp: dvs1-slp-pins { 390 pins = "gpio_pwrctrl1"; 391 function = "pin_fun1"; 392 }; 393 394 rk806_dvs1_pwrdn: dvs1-pwrdn-pins { 395 pins = "gpio_pwrctrl1"; 396 function = "pin_fun2"; 397 }; 398 399 rk806_dvs1_rst: dvs1-rst-pins { 400 pins = "gpio_pwrctrl1"; 401 function = "pin_fun3"; 402 }; 403 404 rk806_dvs2_slp: dvs2-slp-pins { 405 pins = "gpio_pwrctrl2"; 406 function = "pin_fun1"; 407 }; 408 409 rk806_dvs2_pwrdn: dvs2-pwrdn-pins { 410 pins = "gpio_pwrctrl2"; 411 function = "pin_fun2"; 412 }; 413 414 rk806_dvs2_rst: dvs2-rst-pins { 415 pins = "gpio_pwrctrl2"; 416 function = "pin_fun3"; 417 }; 418 419 rk806_dvs2_dvs: dvs2-dvs-pins { 420 pins = "gpio_pwrctrl2"; 421 function = "pin_fun4"; 422 }; 423 424 rk806_dvs2_gpio: dvs2-gpio-pins { 425 pins = "gpio_pwrctrl2"; 426 function = "pin_fun5"; 427 }; 428 429 rk806_dvs3_slp: dvs3-slp-pins { 430 pins = "gpio_pwrctrl3"; 431 function = "pin_fun1"; 432 }; 433 434 rk806_dvs3_pwrdn: dvs3-pwrdn-pins { 435 pins = "gpio_pwrctrl3"; 436 function = "pin_fun2"; 437 }; 438 439 rk806_dvs3_rst: dvs3-rst-pins { 440 pins = "gpio_pwrctrl3"; 441 function = "pin_fun3"; 442 }; 443 444 rk806_dvs3_dvs: dvs3-dvs-pins { 445 pins = "gpio_pwrctrl3"; 446 function = "pin_fun4"; 447 }; 448 449 rk806_dvs3_gpio: dvs3-gpio-pins { 450 pins = "gpio_pwrctrl3"; 451 function = "pin_fun5"; 452 }; 453 454 regulators { 455 vdd_cpu_big_s0: dcdc-reg1 { 456 regulator-always-on; 457 regulator-boot-on; 458 regulator-min-microvolt = <550000>; 459 regulator-max-microvolt = <950000>; 460 regulator-ramp-delay = <12500>; 461 regulator-name = "vdd_cpu_big_s0"; 462 regulator-enable-ramp-delay = <400>; 463 regulator-state-mem { 464 regulator-off-in-suspend; 465 }; 466 }; 467 468 vdd_npu_s0: dcdc-reg2 { 469 regulator-boot-on; 470 regulator-min-microvolt = <550000>; 471 regulator-max-microvolt = <950000>; 472 regulator-ramp-delay = <12500>; 473 regulator-name = "vdd_npu_s0"; 474 regulator-enable-ramp-delay = <400>; 475 regulator-state-mem { 476 regulator-off-in-suspend; 477 }; 478 }; 479 480 vdd_cpu_lit_s0: dcdc-reg3 { 481 regulator-always-on; 482 regulator-boot-on; 483 regulator-min-microvolt = <550000>; 484 regulator-max-microvolt = <950000>; 485 regulator-ramp-delay = <12500>; 486 regulator-name = "vdd_cpu_lit_s0"; 487 regulator-state-mem { 488 regulator-off-in-suspend; 489 regulator-suspend-microvolt = <750000>; 490 }; 491 }; 492 493 vcc_3v3_s3: dcdc-reg4 { 494 regulator-always-on; 495 regulator-boot-on; 496 regulator-min-microvolt = <3300000>; 497 regulator-max-microvolt = <3300000>; 498 regulator-name = "vcc_3v3_s3"; 499 regulator-state-mem { 500 regulator-on-in-suspend; 501 regulator-suspend-microvolt = <3300000>; 502 }; 503 }; 504 505 vdd_gpu_s0: dcdc-reg5 { 506 regulator-boot-on; 507 regulator-min-microvolt = <550000>; 508 regulator-max-microvolt = <900000>; 509 regulator-ramp-delay = <12500>; 510 regulator-name = "vdd_gpu_s0"; 511 regulator-enable-ramp-delay = <400>; 512 regulator-state-mem { 513 regulator-off-in-suspend; 514 regulator-suspend-microvolt = <850000>; 515 }; 516 }; 517 518 vddq_ddr_s0: dcdc-reg6 { 519 regulator-always-on; 520 regulator-boot-on; 521 regulator-name = "vddq_ddr_s0"; 522 regulator-state-mem { 523 regulator-off-in-suspend; 524 }; 525 }; 526 527 vdd_logic_s0: dcdc-reg7 { 528 regulator-always-on; 529 regulator-boot-on; 530 regulator-min-microvolt = <550000>; 531 regulator-max-microvolt = <800000>; 532 regulator-name = "vdd_logic_s0"; 533 regulator-state-mem { 534 regulator-off-in-suspend; 535 }; 536 }; 537 538 vcc_1v8_s3: dcdc-reg8 { 539 regulator-always-on; 540 regulator-boot-on; 541 regulator-min-microvolt = <1800000>; 542 regulator-max-microvolt = <1800000>; 543 regulator-name = "vcc_1v8_s3"; 544 regulator-state-mem { 545 regulator-on-in-suspend; 546 regulator-suspend-microvolt = <1800000>; 547 }; 548 }; 549 550 vdd2_ddr_s3: dcdc-reg9 { 551 regulator-always-on; 552 regulator-boot-on; 553 regulator-name = "vdd2_ddr_s3"; 554 regulator-state-mem { 555 regulator-on-in-suspend; 556 }; 557 }; 558 559 vdd_ddr_s0: dcdc-reg10 { 560 regulator-always-on; 561 regulator-boot-on; 562 regulator-min-microvolt = <550000>; 563 regulator-max-microvolt = <1200000>; 564 regulator-name = "vdd_ddr_s0"; 565 regulator-state-mem { 566 regulator-off-in-suspend; 567 }; 568 }; 569 570 vcca_1v8_s0: pldo-reg1 { 571 regulator-always-on; 572 regulator-boot-on; 573 regulator-min-microvolt = <1800000>; 574 regulator-max-microvolt = <1800000>; 575 regulator-name = "vcca_1v8_s0"; 576 regulator-state-mem { 577 regulator-off-in-suspend; 578 }; 579 }; 580 581 vcca1v8_pldo2_s0: pldo-reg2 { 582 regulator-always-on; 583 regulator-boot-on; 584 regulator-min-microvolt = <1800000>; 585 regulator-max-microvolt = <1800000>; 586 regulator-name = "vcca1v8_pldo2_s0"; 587 regulator-state-mem { 588 regulator-off-in-suspend; 589 }; 590 }; 591 592 vdda_1v2_s0: pldo-reg3 { 593 regulator-always-on; 594 regulator-boot-on; 595 regulator-min-microvolt = <1200000>; 596 regulator-max-microvolt = <1200000>; 597 regulator-name = "vdda_1v2_s0"; 598 regulator-state-mem { 599 regulator-off-in-suspend; 600 }; 601 }; 602 603 vcca_3v3_s0: pldo-reg4 { 604 regulator-always-on; 605 regulator-boot-on; 606 regulator-min-microvolt = <3300000>; 607 regulator-max-microvolt = <3300000>; 608 regulator-name = "vcca_3v3_s0"; 609 regulator-state-mem { 610 regulator-off-in-suspend; 611 }; 612 }; 613 614 vccio_sd_s0: pldo-reg5 { 615 regulator-always-on; 616 regulator-boot-on; 617 regulator-min-microvolt = <1800000>; 618 regulator-max-microvolt = <3300000>; 619 regulator-name = "vccio_sd_s0"; 620 regulator-state-mem { 621 regulator-off-in-suspend; 622 }; 623 }; 624 625 vcca1v8_pldo6_s3: pldo-reg6 { 626 regulator-always-on; 627 regulator-boot-on; 628 regulator-min-microvolt = <1800000>; 629 regulator-max-microvolt = <1800000>; 630 regulator-name = "vcca1v8_pldo6_s3"; 631 regulator-state-mem { 632 regulator-on-in-suspend; 633 regulator-suspend-microvolt = <1800000>; 634 }; 635 }; 636 637 vdd_0v75_s3: nldo-reg1 { 638 regulator-always-on; 639 regulator-boot-on; 640 regulator-min-microvolt = <750000>; 641 regulator-max-microvolt = <750000>; 642 regulator-name = "vdd_0v75_s3"; 643 regulator-state-mem { 644 regulator-on-in-suspend; 645 regulator-suspend-microvolt = <750000>; 646 }; 647 }; 648 649 vdda_ddr_pll_s0: nldo-reg2 { 650 regulator-always-on; 651 regulator-boot-on; 652 regulator-min-microvolt = <850000>; 653 regulator-max-microvolt = <850000>; 654 regulator-name = "vdda_ddr_pll_s0"; 655 regulator-state-mem { 656 regulator-off-in-suspend; 657 }; 658 }; 659 660 vdda0v75_hdmi_s0: nldo-reg3 { 661 regulator-always-on; 662 regulator-boot-on; 663 regulator-min-microvolt = <837500>; 664 regulator-max-microvolt = <837500>; 665 regulator-name = "vdda0v75_hdmi_s0"; 666 regulator-state-mem { 667 regulator-off-in-suspend; 668 }; 669 }; 670 671 vdda_0v85_s0: nldo-reg4 { 672 regulator-always-on; 673 regulator-boot-on; 674 regulator-min-microvolt = <850000>; 675 regulator-max-microvolt = <850000>; 676 regulator-name = "vdda_0v85_s0"; 677 regulator-state-mem { 678 regulator-off-in-suspend; 679 }; 680 }; 681 682 vdda_0v75_s0: nldo-reg5 { 683 regulator-always-on; 684 regulator-boot-on; 685 regulator-min-microvolt = <750000>; 686 regulator-max-microvolt = <750000>; 687 regulator-name = "vdda_0v75_s0"; 688 regulator-state-mem { 689 regulator-off-in-suspend; 690 }; 691 }; 692 }; 693 }; 694}; 695 696&i2c2 { 697 status = "okay"; 698 699 usbc0: typec-portc@22 { 700 compatible = "fcs,fusb302"; 701 reg = <0x22>; 702 interrupt-parent = <&gpio0>; 703 interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>; 704 pinctrl-names = "default"; 705 pinctrl-0 = <&usbc0_interrupt>; 706 vbus-supply = <&vcc_5v0_typec0>; 707 708 connector { 709 compatible = "usb-c-connector"; 710 label = "USB-C"; 711 data-role = "dual"; 712 /* fusb302 supports PD Rev 2.0 Ver 1.2 */ 713 pd-revision = /bits/ 8 <0x2 0x0 0x1 0x2>; 714 power-role = "source"; 715 source-pdos = <PDO_FIXED(5000, 2000, 716 PDO_FIXED_USB_COMM | PDO_FIXED_DATA_SWAP)>; 717 718 altmodes { 719 displayport { 720 svid = /bits/ 16 <0xff01>; 721 vdo = <0xffffffff>; 722 }; 723 }; 724 725 ports { 726 #address-cells = <1>; 727 #size-cells = <0>; 728 729 port@0 { 730 reg = <0>; 731 usbc0_hs_ep: endpoint { 732 remote-endpoint = <&usb_drd0_hs_ep>; 733 }; 734 }; 735 port@1 { 736 reg = <1>; 737 usbc0_ss_ep: endpoint { 738 remote-endpoint = <&usb_drd0_ss_ep>; 739 }; 740 }; 741 port@2 { 742 reg = <2>; 743 usbc0_dp_ep: endpoint { 744 remote-endpoint = <&usbdp_phy_ep>; 745 }; 746 }; 747 }; 748 }; 749 }; 750 751 hym8563: rtc@51 { 752 compatible = "haoyu,hym8563"; 753 reg = <0x51>; 754 clock-output-names = "hym8563"; 755 interrupt-parent = <&gpio0>; 756 interrupts = <RK_PA0 IRQ_TYPE_LEVEL_LOW>; 757 pinctrl-names = "default"; 758 pinctrl-0 = <&hym8563_int>; 759 wakeup-source; 760 #clock-cells = <0>; 761 }; 762}; 763 764&i2c3 { 765 status = "okay"; 766 767 es8388: audio-codec@10 { 768 compatible = "everest,es8388", "everest,es8328"; 769 reg = <0x10>; 770 clocks = <&cru CLK_SAI1_MCLKOUT_TO_IO>; 771 AVDD-supply = <&vcca_3v3_s0>; 772 DVDD-supply = <&vcc_3v3_s0>; 773 HPVDD-supply = <&vcca_3v3_s0>; 774 PVDD-supply = <&vcc_3v3_s0>; 775 assigned-clocks = <&cru CLK_SAI1_MCLKOUT_TO_IO>; 776 assigned-clock-rates = <12288000>; 777 #sound-dai-cells = <0>; 778 pinctrl-names = "default"; 779 pinctrl-0 = <&sai1m0_mclk>; 780 }; 781}; 782 783&mdio0 { 784 rgmii_phy0: phy@1 { 785 compatible = "ethernet-phy-ieee802.3-c22"; 786 reg = <0x1>; 787 clocks = <&cru REFCLKO25M_GMAC0_OUT>; 788 pinctrl-names = "default"; 789 pinctrl-0 = <&gmac0_rst>; 790 reset-assert-us = <20000>; 791 reset-deassert-us = <100000>; 792 reset-gpios = <&gpio2 RK_PB5 GPIO_ACTIVE_LOW>; 793 }; 794}; 795 796&mdio1 { 797 rgmii_phy1: phy@1 { 798 compatible = "ethernet-phy-ieee802.3-c22"; 799 reg = <0x1>; 800 clocks = <&cru REFCLKO25M_GMAC1_OUT>; 801 pinctrl-names = "default"; 802 pinctrl-0 = <&gmac1_rst>; 803 reset-assert-us = <20000>; 804 reset-deassert-us = <100000>; 805 reset-gpios = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>; 806 }; 807}; 808 809&pcie0 { 810 pinctrl-names = "default"; 811 pinctrl-0 = <&pcie_reset>; 812 reset-gpios = <&gpio2 RK_PB4 GPIO_ACTIVE_HIGH>; 813 vpcie3v3-supply = <&vcc_3v3_pcie>; 814 status = "okay"; 815}; 816 817&pinctrl { 818 gmac { 819 gmac0_rst: gmac0-rst { 820 rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 821 }; 822 gmac1_rst: gmac1-rst { 823 rockchip,pins = <3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; 824 }; 825 }; 826 827 headphone { 828 hp_det: hp-det { 829 rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>; 830 }; 831 }; 832 833 hym8563 { 834 hym8563_int: hym8563-int { 835 rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>; 836 }; 837 }; 838 839 leds { 840 led_rgb_r: led-red-en { 841 rockchip,pins = <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 842 }; 843 led_rgb_g: led-green-en { 844 rockchip,pins = <4 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 845 }; 846 }; 847 848 pcie { 849 pcie_pwr_en: pcie-pwr-en { 850 rockchip,pins = <3 RK_PD6 RK_FUNC_GPIO &pcfg_pull_down>; 851 }; 852 pcie_reset: pcie-reset { 853 rockchip,pins = <2 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>; 854 }; 855 }; 856 857 usb { 858 usb_host_pwren: usb-host-pwren { 859 rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; 860 }; 861 usb_otg0_pwren: usb-otg0-pwren { 862 rockchip,pins = <4 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 863 }; 864 usbc0_interrupt: usbc0-interrupt { 865 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; 866 }; 867 usbc0_sbu1: usbc0-sbu1 { 868 rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_down>; 869 }; 870 usbc0_sbu2: usbc0-sbu2 { 871 rockchip,pins = <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_down>; 872 }; 873 }; 874 875 wireless-bluetooth { 876 bt_reg_on: bt-reg-on { 877 rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_up>; 878 }; 879 880 host_wake_bt: host-wake-bt { 881 rockchip,pins = <1 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>; 882 }; 883 884 bt_wake_host: bt-wake-host { 885 rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_down>; 886 }; 887 }; 888 889 wireless-wlan { 890 wifi_wake_host: wifi-wake-host { 891 rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_down>; 892 }; 893 894 wifi_reg_on: wifi-reg-on { 895 rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; 896 }; 897 }; 898}; 899 900&sai1 { 901 pinctrl-names = "default"; 902 pinctrl-0 = <&sai1m0_lrck 903 &sai1m0_sclk 904 &sai1m0_sdi0 905 &sai1m0_sdo0>; 906 status = "okay"; 907}; 908 909&sai6 { 910 status = "okay"; 911}; 912 913&sdhci { 914 bus-width = <8>; 915 full-pwr-cycle-in-suspend; 916 max-frequency = <200000000>; 917 mmc-hs400-1_8v; 918 mmc-hs400-enhanced-strobe; 919 no-sdio; 920 no-sd; 921 non-removable; 922 status = "okay"; 923}; 924 925&sdio { 926 bus-width = <4>; 927 cap-sdio-irq; 928 disable-wp; 929 keep-power-in-suspend; 930 mmc-pwrseq = <&sdio_pwrseq>; 931 no-sd; 932 no-mmc; 933 non-removable; 934 sd-uhs-sdr50; 935 sd-uhs-sdr104; 936 vmmc-supply = <&vcc_3v3_s3>; 937 vqmmc-supply = <&vcc_1v8_s3>; 938 wakeup-source; 939 status = "okay"; 940}; 941 942&sdmmc { 943 bus-width = <4>; 944 cap-mmc-highspeed; 945 cap-sd-highspeed; 946 disable-wp; 947 max-frequency = <200000000>; 948 no-sdio; 949 no-mmc; 950 sd-uhs-sdr104; 951 vmmc-supply = <&vcc_3v3_s3>; 952 vqmmc-supply = <&vccio_sd_s0>; 953 status = "okay"; 954}; 955 956&u2phy0 { 957 status = "okay"; 958}; 959 960&u2phy0_otg { 961 status = "okay"; 962}; 963 964&u2phy1 { 965 status = "okay"; 966}; 967 968&u2phy1_otg { 969 phy-supply = <&vcc_5v0_usbhost>; 970 status = "okay"; 971}; 972 973&uart0 { 974 pinctrl-0 = <&uart0m0_xfer>; 975 status = "okay"; 976}; 977 978/* Used by Bluetooth modules, enabled in a version specific overlay */ 979&uart4 { 980 pinctrl-0 = <&uart4m1_xfer &uart4m1_ctsn &uart4m1_rtsn>; 981 pinctrl-names = "default"; 982 uart-has-rtscts; 983}; 984 985&usb_drd0_dwc3 { 986 usb-role-switch; 987 dr_mode = "otg"; 988 status = "okay"; 989 990 ports { 991 #address-cells = <1>; 992 #size-cells = <0>; 993 994 port@0 { 995 reg = <0>; 996 usb_drd0_hs_ep: endpoint { 997 remote-endpoint = <&usbc0_hs_ep>; 998 }; 999 }; 1000 1001 port@1 { 1002 reg = <1>; 1003 usb_drd0_ss_ep: endpoint { 1004 remote-endpoint = <&usbc0_ss_ep>; 1005 }; 1006 }; 1007 }; 1008}; 1009 1010&usb_drd1_dwc3 { 1011 dr_mode = "host"; 1012 status = "okay"; 1013}; 1014 1015&usbdp_phy { 1016 mode-switch; 1017 orientation-switch; 1018 pinctrl-names = "default"; 1019 pinctrl-0 = <&usbc0_sbu1 &usbc0_sbu2>; 1020 sbu1-dc-gpios = <&gpio2 RK_PA6 GPIO_ACTIVE_HIGH>; 1021 sbu2-dc-gpios = <&gpio2 RK_PA7 GPIO_ACTIVE_HIGH>; 1022 status = "okay"; 1023 1024 port { 1025 usbdp_phy_ep: endpoint { 1026 remote-endpoint = <&usbc0_dp_ep>; 1027 }; 1028 }; 1029}; 1030 1031&vop { 1032 status = "okay"; 1033}; 1034 1035&vop_mmu { 1036 status = "okay"; 1037}; 1038 1039&vp0 { 1040 vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { 1041 reg = <ROCKCHIP_VOP2_EP_HDMI0>; 1042 remote-endpoint = <&hdmi_in_vp0>; 1043 }; 1044}; 1045