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 status = "okay"; 307}; 308 309&gpu { 310 mali-supply = <&vdd_gpu_s0>; 311 status = "okay"; 312}; 313 314&hdmi { 315 status = "okay"; 316}; 317 318&hdmi_in { 319 hdmi_in_vp0: endpoint { 320 remote-endpoint = <&vp0_out_hdmi>; 321 }; 322}; 323 324&hdmi_out { 325 hdmi_out_con: endpoint { 326 remote-endpoint = <&hdmi_con_in>; 327 }; 328}; 329 330&hdmi_sound { 331 status = "okay"; 332}; 333 334&hdptxphy { 335 status = "okay"; 336}; 337 338&i2c1 { 339 status = "okay"; 340 341 pmic@23 { 342 compatible = "rockchip,rk806"; 343 reg = <0x23>; 344 345 interrupt-parent = <&gpio0>; 346 interrupts = <6 IRQ_TYPE_LEVEL_LOW>; 347 348 pinctrl-names = "default"; 349 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 350 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 351 352 system-power-controller; 353 354 vcc1-supply = <&vcc_5v0_sys>; 355 vcc2-supply = <&vcc_5v0_sys>; 356 vcc3-supply = <&vcc_5v0_sys>; 357 vcc4-supply = <&vcc_5v0_sys>; 358 vcc5-supply = <&vcc_5v0_sys>; 359 vcc6-supply = <&vcc_5v0_sys>; 360 vcc7-supply = <&vcc_5v0_sys>; 361 vcc8-supply = <&vcc_5v0_sys>; 362 vcc9-supply = <&vcc_5v0_sys>; 363 vcc10-supply = <&vcc_5v0_sys>; 364 vcc11-supply = <&vcc_2v0_pldo_s3>; 365 vcc12-supply = <&vcc_5v0_sys>; 366 vcc13-supply = <&vcc_1v1_nldo_s3>; 367 vcc14-supply = <&vcc_1v1_nldo_s3>; 368 vcca-supply = <&vcc_5v0_sys>; 369 370 gpio-controller; 371 #gpio-cells = <2>; 372 373 rk806_dvs1_null: dvs1-null-pins { 374 pins = "gpio_pwrctrl1"; 375 function = "pin_fun0"; 376 }; 377 378 rk806_dvs2_null: dvs2-null-pins { 379 pins = "gpio_pwrctrl2"; 380 function = "pin_fun0"; 381 }; 382 383 rk806_dvs3_null: dvs3-null-pins { 384 pins = "gpio_pwrctrl3"; 385 function = "pin_fun0"; 386 }; 387 388 rk806_dvs1_slp: dvs1-slp-pins { 389 pins = "gpio_pwrctrl1"; 390 function = "pin_fun1"; 391 }; 392 393 rk806_dvs1_pwrdn: dvs1-pwrdn-pins { 394 pins = "gpio_pwrctrl1"; 395 function = "pin_fun2"; 396 }; 397 398 rk806_dvs1_rst: dvs1-rst-pins { 399 pins = "gpio_pwrctrl1"; 400 function = "pin_fun3"; 401 }; 402 403 rk806_dvs2_slp: dvs2-slp-pins { 404 pins = "gpio_pwrctrl2"; 405 function = "pin_fun1"; 406 }; 407 408 rk806_dvs2_pwrdn: dvs2-pwrdn-pins { 409 pins = "gpio_pwrctrl2"; 410 function = "pin_fun2"; 411 }; 412 413 rk806_dvs2_rst: dvs2-rst-pins { 414 pins = "gpio_pwrctrl2"; 415 function = "pin_fun3"; 416 }; 417 418 rk806_dvs2_dvs: dvs2-dvs-pins { 419 pins = "gpio_pwrctrl2"; 420 function = "pin_fun4"; 421 }; 422 423 rk806_dvs2_gpio: dvs2-gpio-pins { 424 pins = "gpio_pwrctrl2"; 425 function = "pin_fun5"; 426 }; 427 428 rk806_dvs3_slp: dvs3-slp-pins { 429 pins = "gpio_pwrctrl3"; 430 function = "pin_fun1"; 431 }; 432 433 rk806_dvs3_pwrdn: dvs3-pwrdn-pins { 434 pins = "gpio_pwrctrl3"; 435 function = "pin_fun2"; 436 }; 437 438 rk806_dvs3_rst: dvs3-rst-pins { 439 pins = "gpio_pwrctrl3"; 440 function = "pin_fun3"; 441 }; 442 443 rk806_dvs3_dvs: dvs3-dvs-pins { 444 pins = "gpio_pwrctrl3"; 445 function = "pin_fun4"; 446 }; 447 448 rk806_dvs3_gpio: dvs3-gpio-pins { 449 pins = "gpio_pwrctrl3"; 450 function = "pin_fun5"; 451 }; 452 453 regulators { 454 vdd_cpu_big_s0: dcdc-reg1 { 455 regulator-always-on; 456 regulator-boot-on; 457 regulator-min-microvolt = <550000>; 458 regulator-max-microvolt = <950000>; 459 regulator-ramp-delay = <12500>; 460 regulator-name = "vdd_cpu_big_s0"; 461 regulator-enable-ramp-delay = <400>; 462 regulator-state-mem { 463 regulator-off-in-suspend; 464 }; 465 }; 466 467 vdd_npu_s0: dcdc-reg2 { 468 regulator-boot-on; 469 regulator-min-microvolt = <550000>; 470 regulator-max-microvolt = <950000>; 471 regulator-ramp-delay = <12500>; 472 regulator-name = "vdd_npu_s0"; 473 regulator-enable-ramp-delay = <400>; 474 regulator-state-mem { 475 regulator-off-in-suspend; 476 }; 477 }; 478 479 vdd_cpu_lit_s0: dcdc-reg3 { 480 regulator-always-on; 481 regulator-boot-on; 482 regulator-min-microvolt = <550000>; 483 regulator-max-microvolt = <950000>; 484 regulator-ramp-delay = <12500>; 485 regulator-name = "vdd_cpu_lit_s0"; 486 regulator-state-mem { 487 regulator-off-in-suspend; 488 regulator-suspend-microvolt = <750000>; 489 }; 490 }; 491 492 vcc_3v3_s3: dcdc-reg4 { 493 regulator-always-on; 494 regulator-boot-on; 495 regulator-min-microvolt = <3300000>; 496 regulator-max-microvolt = <3300000>; 497 regulator-name = "vcc_3v3_s3"; 498 regulator-state-mem { 499 regulator-on-in-suspend; 500 regulator-suspend-microvolt = <3300000>; 501 }; 502 }; 503 504 vdd_gpu_s0: dcdc-reg5 { 505 regulator-boot-on; 506 regulator-min-microvolt = <550000>; 507 regulator-max-microvolt = <900000>; 508 regulator-ramp-delay = <12500>; 509 regulator-name = "vdd_gpu_s0"; 510 regulator-enable-ramp-delay = <400>; 511 regulator-state-mem { 512 regulator-off-in-suspend; 513 regulator-suspend-microvolt = <850000>; 514 }; 515 }; 516 517 vddq_ddr_s0: dcdc-reg6 { 518 regulator-always-on; 519 regulator-boot-on; 520 regulator-name = "vddq_ddr_s0"; 521 regulator-state-mem { 522 regulator-off-in-suspend; 523 }; 524 }; 525 526 vdd_logic_s0: dcdc-reg7 { 527 regulator-always-on; 528 regulator-boot-on; 529 regulator-min-microvolt = <550000>; 530 regulator-max-microvolt = <800000>; 531 regulator-name = "vdd_logic_s0"; 532 regulator-state-mem { 533 regulator-off-in-suspend; 534 }; 535 }; 536 537 vcc_1v8_s3: dcdc-reg8 { 538 regulator-always-on; 539 regulator-boot-on; 540 regulator-min-microvolt = <1800000>; 541 regulator-max-microvolt = <1800000>; 542 regulator-name = "vcc_1v8_s3"; 543 regulator-state-mem { 544 regulator-on-in-suspend; 545 regulator-suspend-microvolt = <1800000>; 546 }; 547 }; 548 549 vdd2_ddr_s3: dcdc-reg9 { 550 regulator-always-on; 551 regulator-boot-on; 552 regulator-name = "vdd2_ddr_s3"; 553 regulator-state-mem { 554 regulator-on-in-suspend; 555 }; 556 }; 557 558 vdd_ddr_s0: dcdc-reg10 { 559 regulator-always-on; 560 regulator-boot-on; 561 regulator-min-microvolt = <550000>; 562 regulator-max-microvolt = <1200000>; 563 regulator-name = "vdd_ddr_s0"; 564 regulator-state-mem { 565 regulator-off-in-suspend; 566 }; 567 }; 568 569 vcca_1v8_s0: pldo-reg1 { 570 regulator-always-on; 571 regulator-boot-on; 572 regulator-min-microvolt = <1800000>; 573 regulator-max-microvolt = <1800000>; 574 regulator-name = "vcca_1v8_s0"; 575 regulator-state-mem { 576 regulator-off-in-suspend; 577 }; 578 }; 579 580 vcca1v8_pldo2_s0: pldo-reg2 { 581 regulator-always-on; 582 regulator-boot-on; 583 regulator-min-microvolt = <1800000>; 584 regulator-max-microvolt = <1800000>; 585 regulator-name = "vcca1v8_pldo2_s0"; 586 regulator-state-mem { 587 regulator-off-in-suspend; 588 }; 589 }; 590 591 vdda_1v2_s0: pldo-reg3 { 592 regulator-always-on; 593 regulator-boot-on; 594 regulator-min-microvolt = <1200000>; 595 regulator-max-microvolt = <1200000>; 596 regulator-name = "vdda_1v2_s0"; 597 regulator-state-mem { 598 regulator-off-in-suspend; 599 }; 600 }; 601 602 vcca_3v3_s0: pldo-reg4 { 603 regulator-always-on; 604 regulator-boot-on; 605 regulator-min-microvolt = <3300000>; 606 regulator-max-microvolt = <3300000>; 607 regulator-name = "vcca_3v3_s0"; 608 regulator-state-mem { 609 regulator-off-in-suspend; 610 }; 611 }; 612 613 vccio_sd_s0: pldo-reg5 { 614 regulator-always-on; 615 regulator-boot-on; 616 regulator-min-microvolt = <1800000>; 617 regulator-max-microvolt = <3300000>; 618 regulator-name = "vccio_sd_s0"; 619 regulator-state-mem { 620 regulator-off-in-suspend; 621 }; 622 }; 623 624 vcca1v8_pldo6_s3: pldo-reg6 { 625 regulator-always-on; 626 regulator-boot-on; 627 regulator-min-microvolt = <1800000>; 628 regulator-max-microvolt = <1800000>; 629 regulator-name = "vcca1v8_pldo6_s3"; 630 regulator-state-mem { 631 regulator-on-in-suspend; 632 regulator-suspend-microvolt = <1800000>; 633 }; 634 }; 635 636 vdd_0v75_s3: nldo-reg1 { 637 regulator-always-on; 638 regulator-boot-on; 639 regulator-min-microvolt = <750000>; 640 regulator-max-microvolt = <750000>; 641 regulator-name = "vdd_0v75_s3"; 642 regulator-state-mem { 643 regulator-on-in-suspend; 644 regulator-suspend-microvolt = <750000>; 645 }; 646 }; 647 648 vdda_ddr_pll_s0: nldo-reg2 { 649 regulator-always-on; 650 regulator-boot-on; 651 regulator-min-microvolt = <850000>; 652 regulator-max-microvolt = <850000>; 653 regulator-name = "vdda_ddr_pll_s0"; 654 regulator-state-mem { 655 regulator-off-in-suspend; 656 }; 657 }; 658 659 vdda0v75_hdmi_s0: nldo-reg3 { 660 regulator-always-on; 661 regulator-boot-on; 662 regulator-min-microvolt = <837500>; 663 regulator-max-microvolt = <837500>; 664 regulator-name = "vdda0v75_hdmi_s0"; 665 regulator-state-mem { 666 regulator-off-in-suspend; 667 }; 668 }; 669 670 vdda_0v85_s0: nldo-reg4 { 671 regulator-always-on; 672 regulator-boot-on; 673 regulator-min-microvolt = <850000>; 674 regulator-max-microvolt = <850000>; 675 regulator-name = "vdda_0v85_s0"; 676 regulator-state-mem { 677 regulator-off-in-suspend; 678 }; 679 }; 680 681 vdda_0v75_s0: nldo-reg5 { 682 regulator-always-on; 683 regulator-boot-on; 684 regulator-min-microvolt = <750000>; 685 regulator-max-microvolt = <750000>; 686 regulator-name = "vdda_0v75_s0"; 687 regulator-state-mem { 688 regulator-off-in-suspend; 689 }; 690 }; 691 }; 692 }; 693}; 694 695&i2c2 { 696 status = "okay"; 697 698 usbc0: typec-portc@22 { 699 compatible = "fcs,fusb302"; 700 reg = <0x22>; 701 interrupt-parent = <&gpio0>; 702 interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>; 703 pinctrl-names = "default"; 704 pinctrl-0 = <&usbc0_interrupt>; 705 vbus-supply = <&vcc_5v0_typec0>; 706 707 connector { 708 compatible = "usb-c-connector"; 709 label = "USB-C"; 710 data-role = "dual"; 711 /* fusb302 supports PD Rev 2.0 Ver 1.2 */ 712 pd-revision = /bits/ 8 <0x2 0x0 0x1 0x2>; 713 power-role = "source"; 714 source-pdos = <PDO_FIXED(5000, 2000, 715 PDO_FIXED_USB_COMM | PDO_FIXED_DATA_SWAP)>; 716 717 altmodes { 718 displayport { 719 svid = /bits/ 16 <0xff01>; 720 vdo = <0xffffffff>; 721 }; 722 }; 723 724 ports { 725 #address-cells = <1>; 726 #size-cells = <0>; 727 728 port@0 { 729 reg = <0>; 730 usbc0_hs_ep: endpoint { 731 remote-endpoint = <&usb_drd0_hs_ep>; 732 }; 733 }; 734 port@1 { 735 reg = <1>; 736 usbc0_ss_ep: endpoint { 737 remote-endpoint = <&usb_drd0_ss_ep>; 738 }; 739 }; 740 port@2 { 741 reg = <2>; 742 usbc0_dp_ep: endpoint { 743 remote-endpoint = <&usbdp_phy_ep>; 744 }; 745 }; 746 }; 747 }; 748 }; 749 750 hym8563: rtc@51 { 751 compatible = "haoyu,hym8563"; 752 reg = <0x51>; 753 clock-output-names = "hym8563"; 754 interrupt-parent = <&gpio0>; 755 interrupts = <RK_PA0 IRQ_TYPE_LEVEL_LOW>; 756 pinctrl-names = "default"; 757 pinctrl-0 = <&hym8563_int>; 758 wakeup-source; 759 #clock-cells = <0>; 760 }; 761}; 762 763&i2c3 { 764 status = "okay"; 765 766 es8388: audio-codec@10 { 767 compatible = "everest,es8388", "everest,es8328"; 768 reg = <0x10>; 769 clocks = <&cru CLK_SAI1_MCLKOUT_TO_IO>; 770 AVDD-supply = <&vcca_3v3_s0>; 771 DVDD-supply = <&vcc_3v3_s0>; 772 HPVDD-supply = <&vcca_3v3_s0>; 773 PVDD-supply = <&vcc_3v3_s0>; 774 assigned-clocks = <&cru CLK_SAI1_MCLKOUT_TO_IO>; 775 assigned-clock-rates = <12288000>; 776 #sound-dai-cells = <0>; 777 pinctrl-names = "default"; 778 pinctrl-0 = <&sai1m0_mclk>; 779 }; 780}; 781 782&mdio0 { 783 rgmii_phy0: phy@1 { 784 compatible = "ethernet-phy-ieee802.3-c22"; 785 reg = <0x1>; 786 pinctrl-names = "default"; 787 pinctrl-0 = <&gmac0_rst>; 788 reset-assert-us = <20000>; 789 reset-deassert-us = <100000>; 790 reset-gpios = <&gpio2 RK_PB5 GPIO_ACTIVE_LOW>; 791 }; 792}; 793 794&mdio1 { 795 rgmii_phy1: phy@1 { 796 compatible = "ethernet-phy-ieee802.3-c22"; 797 reg = <0x1>; 798 pinctrl-names = "default"; 799 pinctrl-0 = <&gmac1_rst>; 800 reset-assert-us = <20000>; 801 reset-deassert-us = <100000>; 802 reset-gpios = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>; 803 }; 804}; 805 806&pcie0 { 807 pinctrl-names = "default"; 808 pinctrl-0 = <&pcie_reset>; 809 reset-gpios = <&gpio2 RK_PB4 GPIO_ACTIVE_HIGH>; 810 vpcie3v3-supply = <&vcc_3v3_pcie>; 811 status = "okay"; 812}; 813 814&pinctrl { 815 gmac { 816 gmac0_rst: gmac0-rst { 817 rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; 818 }; 819 gmac1_rst: gmac1-rst { 820 rockchip,pins = <3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; 821 }; 822 }; 823 824 headphone { 825 hp_det: hp-det { 826 rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>; 827 }; 828 }; 829 830 hym8563 { 831 hym8563_int: hym8563-int { 832 rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>; 833 }; 834 }; 835 836 leds { 837 led_rgb_r: led-red-en { 838 rockchip,pins = <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; 839 }; 840 led_rgb_g: led-green-en { 841 rockchip,pins = <4 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 842 }; 843 }; 844 845 pcie { 846 pcie_pwr_en: pcie-pwr-en { 847 rockchip,pins = <3 RK_PD6 RK_FUNC_GPIO &pcfg_pull_down>; 848 }; 849 pcie_reset: pcie-reset { 850 rockchip,pins = <2 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>; 851 }; 852 }; 853 854 usb { 855 usb_host_pwren: usb-host-pwren { 856 rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; 857 }; 858 usb_otg0_pwren: usb-otg0-pwren { 859 rockchip,pins = <4 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; 860 }; 861 usbc0_interrupt: usbc0-interrupt { 862 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>; 863 }; 864 usbc0_sbu1: usbc0-sbu1 { 865 rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_down>; 866 }; 867 usbc0_sbu2: usbc0-sbu2 { 868 rockchip,pins = <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_down>; 869 }; 870 }; 871 872 wireless-bluetooth { 873 bt_reg_on: bt-reg-on { 874 rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_up>; 875 }; 876 877 host_wake_bt: host-wake-bt { 878 rockchip,pins = <1 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>; 879 }; 880 881 bt_wake_host: bt-wake-host { 882 rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_down>; 883 }; 884 }; 885 886 wireless-wlan { 887 wifi_wake_host: wifi-wake-host { 888 rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_down>; 889 }; 890 891 wifi_reg_on: wifi-reg-on { 892 rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>; 893 }; 894 }; 895}; 896 897&sai1 { 898 pinctrl-names = "default"; 899 pinctrl-0 = <&sai1m0_lrck 900 &sai1m0_sclk 901 &sai1m0_sdi0 902 &sai1m0_sdo0>; 903 status = "okay"; 904}; 905 906&sai6 { 907 status = "okay"; 908}; 909 910&sdhci { 911 bus-width = <8>; 912 full-pwr-cycle-in-suspend; 913 max-frequency = <200000000>; 914 mmc-hs400-1_8v; 915 mmc-hs400-enhanced-strobe; 916 no-sdio; 917 no-sd; 918 non-removable; 919 status = "okay"; 920}; 921 922&sdio { 923 bus-width = <4>; 924 cap-sdio-irq; 925 disable-wp; 926 keep-power-in-suspend; 927 mmc-pwrseq = <&sdio_pwrseq>; 928 no-sd; 929 no-mmc; 930 non-removable; 931 sd-uhs-sdr50; 932 sd-uhs-sdr104; 933 vmmc-supply = <&vcc_3v3_s3>; 934 vqmmc-supply = <&vcc_1v8_s3>; 935 wakeup-source; 936 status = "okay"; 937}; 938 939&sdmmc { 940 bus-width = <4>; 941 cap-mmc-highspeed; 942 cap-sd-highspeed; 943 disable-wp; 944 max-frequency = <200000000>; 945 no-sdio; 946 no-mmc; 947 sd-uhs-sdr104; 948 vmmc-supply = <&vcc_3v3_s3>; 949 vqmmc-supply = <&vccio_sd_s0>; 950 status = "okay"; 951}; 952 953&u2phy0 { 954 status = "okay"; 955}; 956 957&u2phy0_otg { 958 status = "okay"; 959}; 960 961&u2phy1 { 962 status = "okay"; 963}; 964 965&u2phy1_otg { 966 phy-supply = <&vcc_5v0_usbhost>; 967 status = "okay"; 968}; 969 970&uart0 { 971 pinctrl-0 = <&uart0m0_xfer>; 972 status = "okay"; 973}; 974 975/* Used by Bluetooth modules, enabled in a version specific overlay */ 976&uart4 { 977 pinctrl-0 = <&uart4m1_xfer &uart4m1_ctsn &uart4m1_rtsn>; 978 pinctrl-names = "default"; 979 uart-has-rtscts; 980}; 981 982&usb_drd0_dwc3 { 983 usb-role-switch; 984 dr_mode = "otg"; 985 status = "okay"; 986 987 ports { 988 #address-cells = <1>; 989 #size-cells = <0>; 990 991 port@0 { 992 reg = <0>; 993 usb_drd0_hs_ep: endpoint { 994 remote-endpoint = <&usbc0_hs_ep>; 995 }; 996 }; 997 998 port@1 { 999 reg = <1>; 1000 usb_drd0_ss_ep: endpoint { 1001 remote-endpoint = <&usbc0_ss_ep>; 1002 }; 1003 }; 1004 }; 1005}; 1006 1007&usb_drd1_dwc3 { 1008 dr_mode = "host"; 1009 status = "okay"; 1010}; 1011 1012&usbdp_phy { 1013 mode-switch; 1014 orientation-switch; 1015 pinctrl-names = "default"; 1016 pinctrl-0 = <&usbc0_sbu1 &usbc0_sbu2>; 1017 sbu1-dc-gpios = <&gpio2 RK_PA6 GPIO_ACTIVE_HIGH>; 1018 sbu2-dc-gpios = <&gpio2 RK_PA7 GPIO_ACTIVE_HIGH>; 1019 status = "okay"; 1020 1021 port { 1022 usbdp_phy_ep: endpoint { 1023 remote-endpoint = <&usbc0_dp_ep>; 1024 }; 1025 }; 1026}; 1027 1028&vop { 1029 status = "okay"; 1030}; 1031 1032&vop_mmu { 1033 status = "okay"; 1034}; 1035 1036&vp0 { 1037 vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { 1038 reg = <ROCKCHIP_VOP2_EP_HDMI0>; 1039 remote-endpoint = <&hdmi_in_vp0>; 1040 }; 1041}; 1042