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