1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 3/dts-v1/; 4 5#include <dt-bindings/gpio/gpio.h> 6#include <dt-bindings/leds/common.h> 7#include "rk3588.dtsi" 8 9/ { 10 model = "ArmSoM Sige7"; 11 compatible = "armsom,sige7", "rockchip,rk3588"; 12 13 aliases { 14 mmc0 = &sdhci; 15 mmc1 = &sdmmc; 16 }; 17 18 chosen { 19 stdout-path = "serial2:1500000n8"; 20 }; 21 22 analog-sound { 23 compatible = "audio-graph-card"; 24 dais = <&i2s0_8ch_p0>; 25 label = "rk3588-es8316"; 26 hp-det-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>; 27 pinctrl-names = "default"; 28 pinctrl-0 = <&hp_detect>; 29 routing = "MIC2", "Mic Jack", 30 "Headphones", "HPOL", 31 "Headphones", "HPOR"; 32 widgets = "Microphone", "Mic Jack", 33 "Headphone", "Headphones"; 34 }; 35 36 leds { 37 compatible = "gpio-leds"; 38 pinctrl-names = "default"; 39 pinctrl-0 = <&led_rgb_g>; 40 41 led_green: led-0 { 42 color = <LED_COLOR_ID_GREEN>; 43 function = LED_FUNCTION_STATUS; 44 gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>; 45 linux,default-trigger = "heartbeat"; 46 }; 47 48 led_red: led-1 { 49 color = <LED_COLOR_ID_RED>; 50 function = LED_FUNCTION_STATUS; 51 gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>; 52 linux,default-trigger = "none"; 53 }; 54 }; 55 56 fan: pwm-fan { 57 compatible = "pwm-fan"; 58 cooling-levels = <0 95 145 195 255>; 59 fan-supply = <&vcc5v0_sys>; 60 pwms = <&pwm1 0 50000 0>; 61 #cooling-cells = <2>; 62 }; 63 64 vcc3v3_pcie2x1l2: vcc3v3-pcie2x1l2-regulator { 65 compatible = "regulator-fixed"; 66 regulator-name = "vcc3v3_pcie2x1l2"; 67 regulator-min-microvolt = <3300000>; 68 regulator-max-microvolt = <3300000>; 69 startup-delay-us = <5000>; 70 vin-supply = <&vcc_3v3_s3>; 71 }; 72 73 vcc3v3_pcie30: vcc3v3-pcie30-regulator { 74 compatible = "regulator-fixed"; 75 enable-active-high; 76 gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>; 77 regulator-name = "vcc3v3_pcie30"; 78 regulator-min-microvolt = <3300000>; 79 regulator-max-microvolt = <3300000>; 80 startup-delay-us = <5000>; 81 vin-supply = <&vcc5v0_sys>; 82 }; 83 84 vcc5v0_host: vcc5v0-host-regulator { 85 compatible = "regulator-fixed"; 86 regulator-name = "vcc5v0_host"; 87 regulator-boot-on; 88 regulator-always-on; 89 regulator-min-microvolt = <5000000>; 90 regulator-max-microvolt = <5000000>; 91 enable-active-high; 92 gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>; 93 pinctrl-names = "default"; 94 pinctrl-0 = <&vcc5v0_host_en>; 95 vin-supply = <&vcc5v0_sys>; 96 }; 97 98 vcc5v0_sys: vcc5v0-sys-regulator { 99 compatible = "regulator-fixed"; 100 regulator-name = "vcc5v0_sys"; 101 regulator-always-on; 102 regulator-boot-on; 103 regulator-min-microvolt = <5000000>; 104 regulator-max-microvolt = <5000000>; 105 }; 106 107 vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator { 108 compatible = "regulator-fixed"; 109 regulator-name = "vcc_1v1_nldo_s3"; 110 regulator-always-on; 111 regulator-boot-on; 112 regulator-min-microvolt = <1100000>; 113 regulator-max-microvolt = <1100000>; 114 vin-supply = <&vcc5v0_sys>; 115 }; 116}; 117 118&combphy0_ps { 119 status = "okay"; 120}; 121 122&combphy1_ps { 123 status = "okay"; 124}; 125 126&combphy2_psu { 127 status = "okay"; 128}; 129 130&cpu_b0 { 131 cpu-supply = <&vdd_cpu_big0_s0>; 132}; 133 134&cpu_b1 { 135 cpu-supply = <&vdd_cpu_big0_s0>; 136}; 137 138&cpu_b2 { 139 cpu-supply = <&vdd_cpu_big1_s0>; 140}; 141 142&cpu_b3 { 143 cpu-supply = <&vdd_cpu_big1_s0>; 144}; 145 146&cpu_l0 { 147 cpu-supply = <&vdd_cpu_lit_s0>; 148}; 149 150&cpu_l1 { 151 cpu-supply = <&vdd_cpu_lit_s0>; 152}; 153 154&cpu_l2 { 155 cpu-supply = <&vdd_cpu_lit_s0>; 156}; 157 158&cpu_l3 { 159 cpu-supply = <&vdd_cpu_lit_s0>; 160}; 161 162&gpu { 163 mali-supply = <&vdd_gpu_s0>; 164 status = "okay"; 165}; 166 167&i2c0 { 168 pinctrl-names = "default"; 169 pinctrl-0 = <&i2c0m2_xfer>; 170 status = "okay"; 171 172 vdd_cpu_big0_s0: regulator@42 { 173 compatible = "rockchip,rk8602"; 174 reg = <0x42>; 175 fcs,suspend-voltage-selector = <1>; 176 regulator-name = "vdd_cpu_big0_s0"; 177 regulator-always-on; 178 regulator-boot-on; 179 regulator-min-microvolt = <550000>; 180 regulator-max-microvolt = <1050000>; 181 regulator-ramp-delay = <2300>; 182 vin-supply = <&vcc5v0_sys>; 183 184 regulator-state-mem { 185 regulator-off-in-suspend; 186 }; 187 }; 188 189 vdd_cpu_big1_s0: regulator@43 { 190 compatible = "rockchip,rk8603", "rockchip,rk8602"; 191 reg = <0x43>; 192 fcs,suspend-voltage-selector = <1>; 193 regulator-name = "vdd_cpu_big1_s0"; 194 regulator-always-on; 195 regulator-boot-on; 196 regulator-min-microvolt = <550000>; 197 regulator-max-microvolt = <1050000>; 198 regulator-ramp-delay = <2300>; 199 vin-supply = <&vcc5v0_sys>; 200 201 regulator-state-mem { 202 regulator-off-in-suspend; 203 }; 204 }; 205}; 206 207&i2c6 { 208 status = "okay"; 209 210 hym8563: rtc@51 { 211 compatible = "haoyu,hym8563"; 212 reg = <0x51>; 213 interrupt-parent = <&gpio0>; 214 interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>; 215 #clock-cells = <0>; 216 clock-output-names = "hym8563"; 217 pinctrl-names = "default"; 218 pinctrl-0 = <&hym8563_int>; 219 wakeup-source; 220 }; 221}; 222 223&i2c7 { 224 status = "okay"; 225 226 es8316: audio-codec@11 { 227 compatible = "everest,es8316"; 228 reg = <0x11>; 229 assigned-clocks = <&cru I2S0_8CH_MCLKOUT>; 230 assigned-clock-rates = <12288000>; 231 clocks = <&cru I2S0_8CH_MCLKOUT>; 232 clock-names = "mclk"; 233 #sound-dai-cells = <0>; 234 235 port { 236 es8316_p0_0: endpoint { 237 remote-endpoint = <&i2s0_8ch_p0_0>; 238 }; 239 }; 240 }; 241}; 242 243&i2s0_8ch { 244 pinctrl-names = "default"; 245 pinctrl-0 = <&i2s0_lrck 246 &i2s0_mclk 247 &i2s0_sclk 248 &i2s0_sdi0 249 &i2s0_sdo0>; 250 status = "okay"; 251 252 i2s0_8ch_p0: port { 253 i2s0_8ch_p0_0: endpoint { 254 dai-format = "i2s"; 255 mclk-fs = <256>; 256 remote-endpoint = <&es8316_p0_0>; 257 }; 258 }; 259}; 260 261/* phy1 - right ethernet port */ 262&pcie2x1l0 { 263 reset-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>; 264 status = "okay"; 265}; 266 267/* phy2 - WiFi */ 268&pcie2x1l1 { 269 reset-gpios = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; 270 status = "okay"; 271}; 272 273/* phy0 - left ethernet port */ 274&pcie2x1l2 { 275 reset-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>; 276 status = "okay"; 277}; 278 279&pcie30phy { 280 status = "okay"; 281}; 282 283&pcie3x4 { 284 reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; 285 vpcie3v3-supply = <&vcc3v3_pcie30>; 286 status = "okay"; 287}; 288 289&pinctrl { 290 hym8563 { 291 hym8563_int: hym8563-int { 292 rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 293 }; 294 }; 295 296 leds { 297 led_rgb_g: led-rgb-g { 298 rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; 299 }; 300 led_rgb_r: led-rgb-r { 301 rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; 302 }; 303 }; 304 305 sound { 306 hp_detect: hp-detect { 307 rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; 308 }; 309 }; 310 311 usb { 312 vcc5v0_host_en: vcc5v0-host-en { 313 rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; 314 }; 315 }; 316}; 317 318&pwm1 { 319 status = "okay"; 320}; 321 322&saradc { 323 vref-supply = <&avcc_1v8_s0>; 324 status = "okay"; 325}; 326 327&sdhci { 328 bus-width = <8>; 329 no-sdio; 330 no-sd; 331 non-removable; 332 mmc-hs200-1_8v; 333 status = "okay"; 334}; 335 336&sdmmc { 337 bus-width = <4>; 338 cap-mmc-highspeed; 339 cap-sd-highspeed; 340 disable-wp; 341 max-frequency = <200000000>; 342 no-sdio; 343 no-mmc; 344 sd-uhs-sdr104; 345 vmmc-supply = <&vcc_3v3_s3>; 346 vqmmc-supply = <&vccio_sd_s0>; 347 status = "okay"; 348}; 349 350&spi2 { 351 assigned-clocks = <&cru CLK_SPI2>; 352 assigned-clock-rates = <200000000>; 353 num-cs = <1>; 354 pinctrl-names = "default"; 355 pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>; 356 status = "okay"; 357 358 pmic@0 { 359 compatible = "rockchip,rk806"; 360 spi-max-frequency = <1000000>; 361 reg = <0x0>; 362 363 interrupt-parent = <&gpio0>; 364 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 365 366 gpio-controller; 367 #gpio-cells = <2>; 368 369 pinctrl-names = "default"; 370 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 371 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 372 373 system-power-controller; 374 375 vcc1-supply = <&vcc5v0_sys>; 376 vcc2-supply = <&vcc5v0_sys>; 377 vcc3-supply = <&vcc5v0_sys>; 378 vcc4-supply = <&vcc5v0_sys>; 379 vcc5-supply = <&vcc5v0_sys>; 380 vcc6-supply = <&vcc5v0_sys>; 381 vcc7-supply = <&vcc5v0_sys>; 382 vcc8-supply = <&vcc5v0_sys>; 383 vcc9-supply = <&vcc5v0_sys>; 384 vcc10-supply = <&vcc5v0_sys>; 385 vcc11-supply = <&vcc_2v0_pldo_s3>; 386 vcc12-supply = <&vcc5v0_sys>; 387 vcc13-supply = <&vcc_1v1_nldo_s3>; 388 vcc14-supply = <&vcc_1v1_nldo_s3>; 389 vcca-supply = <&vcc5v0_sys>; 390 391 rk806_dvs1_null: dvs1-null-pins { 392 pins = "gpio_pwrctrl1"; 393 function = "pin_fun0"; 394 }; 395 396 rk806_dvs2_null: dvs2-null-pins { 397 pins = "gpio_pwrctrl2"; 398 function = "pin_fun0"; 399 }; 400 401 rk806_dvs3_null: dvs3-null-pins { 402 pins = "gpio_pwrctrl3"; 403 function = "pin_fun0"; 404 }; 405 406 regulators { 407 vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 { 408 regulator-always-on; 409 regulator-boot-on; 410 regulator-min-microvolt = <550000>; 411 regulator-max-microvolt = <950000>; 412 regulator-ramp-delay = <12500>; 413 regulator-name = "vdd_gpu_s0"; 414 regulator-enable-ramp-delay = <400>; 415 416 regulator-state-mem { 417 regulator-off-in-suspend; 418 }; 419 }; 420 421 vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 { 422 regulator-always-on; 423 regulator-boot-on; 424 regulator-min-microvolt = <550000>; 425 regulator-max-microvolt = <950000>; 426 regulator-ramp-delay = <12500>; 427 regulator-name = "vdd_cpu_lit_s0"; 428 429 regulator-state-mem { 430 regulator-off-in-suspend; 431 }; 432 }; 433 434 vdd_log_s0: dcdc-reg3 { 435 regulator-always-on; 436 regulator-boot-on; 437 regulator-min-microvolt = <675000>; 438 regulator-max-microvolt = <750000>; 439 regulator-ramp-delay = <12500>; 440 regulator-name = "vdd_log_s0"; 441 442 regulator-state-mem { 443 regulator-off-in-suspend; 444 regulator-suspend-microvolt = <750000>; 445 }; 446 }; 447 448 vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 { 449 regulator-always-on; 450 regulator-boot-on; 451 regulator-min-microvolt = <550000>; 452 regulator-max-microvolt = <950000>; 453 regulator-ramp-delay = <12500>; 454 regulator-name = "vdd_vdenc_s0"; 455 456 regulator-state-mem { 457 regulator-off-in-suspend; 458 }; 459 }; 460 461 vdd_ddr_s0: dcdc-reg5 { 462 regulator-always-on; 463 regulator-boot-on; 464 regulator-min-microvolt = <675000>; 465 regulator-max-microvolt = <900000>; 466 regulator-ramp-delay = <12500>; 467 regulator-name = "vdd_ddr_s0"; 468 469 regulator-state-mem { 470 regulator-off-in-suspend; 471 regulator-suspend-microvolt = <850000>; 472 }; 473 }; 474 475 vdd2_ddr_s3: dcdc-reg6 { 476 regulator-always-on; 477 regulator-boot-on; 478 regulator-name = "vdd2_ddr_s3"; 479 480 regulator-state-mem { 481 regulator-on-in-suspend; 482 }; 483 }; 484 485 vcc_2v0_pldo_s3: dcdc-reg7 { 486 regulator-always-on; 487 regulator-boot-on; 488 regulator-min-microvolt = <2000000>; 489 regulator-max-microvolt = <2000000>; 490 regulator-ramp-delay = <12500>; 491 regulator-name = "vdd_2v0_pldo_s3"; 492 493 regulator-state-mem { 494 regulator-on-in-suspend; 495 regulator-suspend-microvolt = <2000000>; 496 }; 497 }; 498 499 vcc_3v3_s3: dcdc-reg8 { 500 regulator-always-on; 501 regulator-boot-on; 502 regulator-min-microvolt = <3300000>; 503 regulator-max-microvolt = <3300000>; 504 regulator-name = "vcc_3v3_s3"; 505 506 regulator-state-mem { 507 regulator-on-in-suspend; 508 regulator-suspend-microvolt = <3300000>; 509 }; 510 }; 511 512 vddq_ddr_s0: dcdc-reg9 { 513 regulator-always-on; 514 regulator-boot-on; 515 regulator-name = "vddq_ddr_s0"; 516 517 regulator-state-mem { 518 regulator-off-in-suspend; 519 }; 520 }; 521 522 vcc_1v8_s3: dcdc-reg10 { 523 regulator-always-on; 524 regulator-boot-on; 525 regulator-min-microvolt = <1800000>; 526 regulator-max-microvolt = <1800000>; 527 regulator-name = "vcc_1v8_s3"; 528 529 regulator-state-mem { 530 regulator-on-in-suspend; 531 regulator-suspend-microvolt = <1800000>; 532 }; 533 }; 534 535 avcc_1v8_s0: pldo-reg1 { 536 regulator-always-on; 537 regulator-boot-on; 538 regulator-min-microvolt = <1800000>; 539 regulator-max-microvolt = <1800000>; 540 regulator-name = "avcc_1v8_s0"; 541 542 regulator-state-mem { 543 regulator-off-in-suspend; 544 }; 545 }; 546 547 vcc_1v8_s0: pldo-reg2 { 548 regulator-always-on; 549 regulator-boot-on; 550 regulator-min-microvolt = <1800000>; 551 regulator-max-microvolt = <1800000>; 552 regulator-name = "vcc_1v8_s0"; 553 554 regulator-state-mem { 555 regulator-off-in-suspend; 556 regulator-suspend-microvolt = <1800000>; 557 }; 558 }; 559 560 avdd_1v2_s0: pldo-reg3 { 561 regulator-always-on; 562 regulator-boot-on; 563 regulator-min-microvolt = <1200000>; 564 regulator-max-microvolt = <1200000>; 565 regulator-name = "avdd_1v2_s0"; 566 567 regulator-state-mem { 568 regulator-off-in-suspend; 569 }; 570 }; 571 572 vcc_3v3_s0: pldo-reg4 { 573 regulator-always-on; 574 regulator-boot-on; 575 regulator-min-microvolt = <3300000>; 576 regulator-max-microvolt = <3300000>; 577 regulator-ramp-delay = <12500>; 578 regulator-name = "vcc_3v3_s0"; 579 580 regulator-state-mem { 581 regulator-off-in-suspend; 582 }; 583 }; 584 585 vccio_sd_s0: pldo-reg5 { 586 regulator-always-on; 587 regulator-boot-on; 588 regulator-min-microvolt = <1800000>; 589 regulator-max-microvolt = <3300000>; 590 regulator-ramp-delay = <12500>; 591 regulator-name = "vccio_sd_s0"; 592 593 regulator-state-mem { 594 regulator-off-in-suspend; 595 }; 596 }; 597 598 pldo6_s3: pldo-reg6 { 599 regulator-always-on; 600 regulator-boot-on; 601 regulator-min-microvolt = <1800000>; 602 regulator-max-microvolt = <1800000>; 603 regulator-name = "pldo6_s3"; 604 605 regulator-state-mem { 606 regulator-on-in-suspend; 607 regulator-suspend-microvolt = <1800000>; 608 }; 609 }; 610 611 vdd_0v75_s3: nldo-reg1 { 612 regulator-always-on; 613 regulator-boot-on; 614 regulator-min-microvolt = <750000>; 615 regulator-max-microvolt = <750000>; 616 regulator-name = "vdd_0v75_s3"; 617 618 regulator-state-mem { 619 regulator-on-in-suspend; 620 regulator-suspend-microvolt = <750000>; 621 }; 622 }; 623 624 vdd_ddr_pll_s0: nldo-reg2 { 625 regulator-always-on; 626 regulator-boot-on; 627 regulator-min-microvolt = <850000>; 628 regulator-max-microvolt = <850000>; 629 regulator-name = "vdd_ddr_pll_s0"; 630 631 regulator-state-mem { 632 regulator-off-in-suspend; 633 regulator-suspend-microvolt = <850000>; 634 }; 635 }; 636 637 avdd_0v75_s0: nldo-reg3 { 638 regulator-always-on; 639 regulator-boot-on; 640 regulator-min-microvolt = <750000>; 641 regulator-max-microvolt = <750000>; 642 regulator-name = "avdd_0v75_s0"; 643 644 regulator-state-mem { 645 regulator-off-in-suspend; 646 }; 647 }; 648 649 vdd_0v85_s0: nldo-reg4 { 650 regulator-always-on; 651 regulator-boot-on; 652 regulator-min-microvolt = <850000>; 653 regulator-max-microvolt = <850000>; 654 regulator-name = "vdd_0v85_s0"; 655 656 regulator-state-mem { 657 regulator-off-in-suspend; 658 }; 659 }; 660 661 vdd_0v75_s0: nldo-reg5 { 662 regulator-always-on; 663 regulator-boot-on; 664 regulator-min-microvolt = <750000>; 665 regulator-max-microvolt = <750000>; 666 regulator-name = "vdd_0v75_s0"; 667 668 regulator-state-mem { 669 regulator-off-in-suspend; 670 }; 671 }; 672 }; 673 }; 674}; 675 676&u2phy0 { 677 status = "okay"; 678}; 679 680&u2phy0_otg { 681 status = "okay"; 682}; 683 684&u2phy1 { 685 status = "okay"; 686}; 687 688&u2phy1_otg { 689 status = "okay"; 690}; 691 692&u2phy3 { 693 status = "okay"; 694}; 695 696&u2phy3_host { 697 phy-supply = <&vcc5v0_host>; 698 status = "okay"; 699}; 700 701&uart2 { 702 pinctrl-0 = <&uart2m0_xfer>; 703 status = "okay"; 704}; 705 706&usbdp_phy1 { 707 status = "okay"; 708}; 709 710&usb_host1_ehci { 711 status = "okay"; 712}; 713 714&usb_host1_ohci { 715 status = "okay"; 716}; 717 718&usb_host1_xhci { 719 dr_mode = "host"; 720 status = "okay"; 721}; 722