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&saradc { 419 vref-supply = <&vcc_1v8_s0>; 420 status = "okay"; 421}; 422 423&sata0 { 424 status = "okay"; 425}; 426 427&sdhci { 428 bus-width = <8>; 429 no-sdio; 430 no-sd; 431 non-removable; 432 max-frequency = <150000000>; 433 mmc-hs400-1_8v; 434 mmc-hs400-enhanced-strobe; 435 status = "okay"; 436}; 437 438&sdmmc { 439 bus-width = <4>; 440 cap-sd-highspeed; 441 cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; 442 disable-wp; 443 max-frequency = <150000000>; 444 no-sdio; 445 no-mmc; 446 sd-uhs-sdr104; 447 vmmc-supply = <&vcc_3v3_s3>; 448 vqmmc-supply = <&vccio_sd_s0>; 449 status = "okay"; 450}; 451 452&spi2 { 453 assigned-clocks = <&cru CLK_SPI2>; 454 assigned-clock-rates = <200000000>; 455 num-cs = <2>; 456 status = "okay"; 457 458 pmic@0 { 459 compatible = "rockchip,rk806"; 460 reg = <0x0>; 461 #gpio-cells = <2>; 462 gpio-controller; 463 interrupt-parent = <&gpio0>; 464 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 465 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 466 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 467 pinctrl-names = "default"; 468 spi-max-frequency = <1000000>; 469 system-power-controller; 470 471 vcc1-supply = <&vcc4v0_sys>; 472 vcc2-supply = <&vcc4v0_sys>; 473 vcc3-supply = <&vcc4v0_sys>; 474 vcc4-supply = <&vcc4v0_sys>; 475 vcc5-supply = <&vcc4v0_sys>; 476 vcc6-supply = <&vcc4v0_sys>; 477 vcc7-supply = <&vcc4v0_sys>; 478 vcc8-supply = <&vcc4v0_sys>; 479 vcc9-supply = <&vcc4v0_sys>; 480 vcc10-supply = <&vcc4v0_sys>; 481 vcc11-supply = <&vcc_2v0_pldo_s3>; 482 vcc12-supply = <&vcc4v0_sys>; 483 vcc13-supply = <&vcc_1v1_nldo_s3>; 484 vcc14-supply = <&vcc_1v1_nldo_s3>; 485 vcca-supply = <&vcc4v0_sys>; 486 487 rk806_dvs1_null: dvs1-null-pins { 488 pins = "gpio_pwrctrl1"; 489 function = "pin_fun0"; 490 }; 491 492 rk806_dvs2_null: dvs2-null-pins { 493 pins = "gpio_pwrctrl2"; 494 function = "pin_fun0"; 495 }; 496 497 rk806_dvs3_null: dvs3-null-pins { 498 pins = "gpio_pwrctrl3"; 499 function = "pin_fun0"; 500 }; 501 502 regulators { 503 vdd_gpu_s0: dcdc-reg1 { 504 regulator-name = "vdd_gpu_s0"; 505 /* regulator coupling requires always-on */ 506 regulator-always-on; 507 regulator-boot-on; 508 regulator-enable-ramp-delay = <400>; 509 regulator-min-microvolt = <550000>; 510 regulator-max-microvolt = <950000>; 511 regulator-ramp-delay = <12500>; 512 regulator-coupled-with = <&vdd_gpu_mem_s0>; 513 regulator-coupled-max-spread = <10000>; 514 515 regulator-state-mem { 516 regulator-off-in-suspend; 517 }; 518 }; 519 520 vdd_npu_s0: dcdc-reg2 { 521 regulator-name = "vdd_npu_s0"; 522 regulator-always-on; 523 regulator-boot-on; 524 regulator-min-microvolt = <550000>; 525 regulator-max-microvolt = <950000>; 526 regulator-ramp-delay = <12500>; 527 528 regulator-state-mem { 529 regulator-off-in-suspend; 530 }; 531 }; 532 533 vdd_log_s0: dcdc-reg3 { 534 regulator-name = "vdd_log_s0"; 535 regulator-always-on; 536 regulator-boot-on; 537 regulator-min-microvolt = <675000>; 538 regulator-max-microvolt = <750000>; 539 regulator-ramp-delay = <12500>; 540 541 regulator-state-mem { 542 regulator-off-in-suspend; 543 regulator-suspend-microvolt = <750000>; 544 }; 545 }; 546 547 vdd_vdenc_s0: dcdc-reg4 { 548 regulator-name = "vdd_vdenc_s0"; 549 regulator-always-on; 550 regulator-boot-on; 551 regulator-min-microvolt = <550000>; 552 regulator-max-microvolt = <950000>; 553 regulator-ramp-delay = <12500>; 554 555 regulator-state-mem { 556 regulator-off-in-suspend; 557 }; 558 559 }; 560 561 vdd_gpu_mem_s0: dcdc-reg5 { 562 regulator-name = "vdd_gpu_mem_s0"; 563 /* regulator coupling requires always-on */ 564 regulator-always-on; 565 regulator-boot-on; 566 regulator-enable-ramp-delay = <400>; 567 regulator-min-microvolt = <675000>; 568 regulator-max-microvolt = <950000>; 569 regulator-ramp-delay = <12500>; 570 regulator-coupled-with = <&vdd_gpu_s0>; 571 regulator-coupled-max-spread = <10000>; 572 573 regulator-state-mem { 574 regulator-off-in-suspend; 575 }; 576 577 }; 578 579 vdd_npu_mem_s0: dcdc-reg6 { 580 regulator-name = "vdd_npu_mem_s0"; 581 regulator-always-on; 582 regulator-boot-on; 583 regulator-min-microvolt = <675000>; 584 regulator-max-microvolt = <950000>; 585 regulator-ramp-delay = <12500>; 586 587 regulator-state-mem { 588 regulator-off-in-suspend; 589 }; 590 591 }; 592 593 vcc_2v0_pldo_s3: dcdc-reg7 { 594 regulator-name = "vdd_2v0_pldo_s3"; 595 regulator-always-on; 596 regulator-boot-on; 597 regulator-min-microvolt = <2000000>; 598 regulator-max-microvolt = <2000000>; 599 regulator-ramp-delay = <12500>; 600 601 regulator-state-mem { 602 regulator-on-in-suspend; 603 regulator-suspend-microvolt = <2000000>; 604 }; 605 }; 606 607 vdd_vdenc_mem_s0: dcdc-reg8 { 608 regulator-name = "vdd_vdenc_mem_s0"; 609 regulator-always-on; 610 regulator-boot-on; 611 regulator-min-microvolt = <675000>; 612 regulator-max-microvolt = <950000>; 613 regulator-ramp-delay = <12500>; 614 615 regulator-state-mem { 616 regulator-off-in-suspend; 617 }; 618 }; 619 620 vdd2_ddr_s3: dcdc-reg9 { 621 regulator-name = "vdd2_ddr_s3"; 622 regulator-always-on; 623 regulator-boot-on; 624 625 regulator-state-mem { 626 regulator-on-in-suspend; 627 }; 628 }; 629 630 vcc_1v1_nldo_s3: dcdc-reg10 { 631 regulator-name = "vcc_1v1_nldo_s3"; 632 regulator-always-on; 633 regulator-boot-on; 634 regulator-min-microvolt = <1100000>; 635 regulator-max-microvolt = <1100000>; 636 regulator-ramp-delay = <12500>; 637 638 regulator-state-mem { 639 regulator-on-in-suspend; 640 regulator-suspend-microvolt = <1100000>; 641 }; 642 }; 643 644 avcc_1v8_s0: pldo-reg1 { 645 regulator-name = "avcc_1v8_s0"; 646 regulator-always-on; 647 regulator-boot-on; 648 regulator-min-microvolt = <1800000>; 649 regulator-max-microvolt = <1800000>; 650 regulator-ramp-delay = <12500>; 651 652 regulator-state-mem { 653 regulator-off-in-suspend; 654 }; 655 }; 656 657 vdd1_1v8_ddr_s3: pldo-reg2 { 658 regulator-name = "vdd1_1v8_ddr_s3"; 659 regulator-always-on; 660 regulator-boot-on; 661 regulator-min-microvolt = <1800000>; 662 regulator-max-microvolt = <1800000>; 663 regulator-ramp-delay = <12500>; 664 665 regulator-state-mem { 666 regulator-on-in-suspend; 667 regulator-suspend-microvolt = <1800000>; 668 }; 669 }; 670 671 avcc_1v8_codec_s0: pldo-reg3 { 672 regulator-name = "avcc_1v8_codec_s0"; 673 regulator-always-on; 674 regulator-boot-on; 675 regulator-min-microvolt = <1800000>; 676 regulator-max-microvolt = <1800000>; 677 regulator-ramp-delay = <12500>; 678 679 regulator-state-mem { 680 regulator-off-in-suspend; 681 }; 682 }; 683 684 vcc_3v3_s3: pldo-reg4 { 685 regulator-name = "vcc_3v3_s3"; 686 regulator-always-on; 687 regulator-boot-on; 688 regulator-min-microvolt = <3300000>; 689 regulator-max-microvolt = <3300000>; 690 regulator-ramp-delay = <12500>; 691 692 regulator-state-mem { 693 regulator-on-in-suspend; 694 regulator-suspend-microvolt = <3300000>; 695 }; 696 }; 697 698 vccio_sd_s0: pldo-reg5 { 699 regulator-name = "vccio_sd_s0"; 700 regulator-always-on; 701 regulator-boot-on; 702 regulator-min-microvolt = <1800000>; 703 regulator-max-microvolt = <3300000>; 704 regulator-ramp-delay = <12500>; 705 706 regulator-state-mem { 707 regulator-off-in-suspend; 708 }; 709 }; 710 711 vcc_1v8_s3: pldo-reg6 { 712 regulator-name = "vcc_1v8_s3"; 713 regulator-always-on; 714 regulator-boot-on; 715 regulator-min-microvolt = <1800000>; 716 regulator-max-microvolt = <1800000>; 717 regulator-ramp-delay = <12500>; 718 719 regulator-state-mem { 720 regulator-on-in-suspend; 721 regulator-suspend-microvolt = <1800000>; 722 }; 723 }; 724 725 vdd_0v75_s3: nldo-reg1 { 726 regulator-name = "vdd_0v75_s3"; 727 regulator-always-on; 728 regulator-boot-on; 729 regulator-min-microvolt = <750000>; 730 regulator-max-microvolt = <750000>; 731 regulator-ramp-delay = <12500>; 732 733 regulator-state-mem { 734 regulator-on-in-suspend; 735 regulator-suspend-microvolt = <750000>; 736 }; 737 }; 738 739 /* reserved for LPDDR5, unused? */ 740 vdd2l_0v9_ddr_s3: nldo-reg2 { 741 regulator-name = "vdd2l_0v9_ddr_s3"; 742 regulator-always-on; 743 regulator-boot-on; 744 regulator-min-microvolt = <900000>; 745 regulator-max-microvolt = <900000>; 746 747 regulator-state-mem { 748 regulator-on-in-suspend; 749 regulator-suspend-microvolt = <900000>; 750 }; 751 }; 752 753 vdd_0v75_hdmi_edp_s0: nldo-reg3 { 754 regulator-name = "vdd_0v75_hdmi_edp_s0"; 755 regulator-always-on; 756 regulator-boot-on; 757 regulator-min-microvolt = <750000>; 758 regulator-max-microvolt = <750000>; 759 760 regulator-state-mem { 761 regulator-off-in-suspend; 762 }; 763 }; 764 765 avdd_0v75_s0: nldo-reg4 { 766 regulator-name = "avdd_0v75_s0"; 767 regulator-always-on; 768 regulator-boot-on; 769 regulator-min-microvolt = <750000>; 770 regulator-max-microvolt = <750000>; 771 772 regulator-state-mem { 773 regulator-off-in-suspend; 774 }; 775 }; 776 777 vdd_0v85_s0: nldo-reg5 { 778 regulator-name = "vdd_0v85_s0"; 779 regulator-always-on; 780 regulator-boot-on; 781 regulator-min-microvolt = <850000>; 782 regulator-max-microvolt = <850000>; 783 784 regulator-state-mem { 785 regulator-off-in-suspend; 786 }; 787 }; 788 }; 789 }; 790 791 pmic@1 { 792 compatible = "rockchip,rk806"; 793 reg = <0x01>; 794 #gpio-cells = <2>; 795 gpio-controller; 796 interrupt-parent = <&gpio0>; 797 interrupts = <7 IRQ_TYPE_LEVEL_LOW>; 798 pinctrl-0 = <&rk806_slave_dvs1_null>, <&rk806_slave_dvs2_null>, 799 <&rk806_slave_dvs3_null>; 800 pinctrl-names = "default"; 801 spi-max-frequency = <1000000>; 802 803 vcc1-supply = <&vcc4v0_sys>; 804 vcc2-supply = <&vcc4v0_sys>; 805 vcc3-supply = <&vcc4v0_sys>; 806 vcc4-supply = <&vcc4v0_sys>; 807 vcc5-supply = <&vcc4v0_sys>; 808 vcc6-supply = <&vcc4v0_sys>; 809 vcc7-supply = <&vcc4v0_sys>; 810 vcc8-supply = <&vcc4v0_sys>; 811 vcc9-supply = <&vcc4v0_sys>; 812 vcc10-supply = <&vcc4v0_sys>; 813 vcc11-supply = <&vcc_2v0_pldo_s3>; 814 vcc12-supply = <&vcc4v0_sys>; 815 vcc13-supply = <&vcc_1v1_nldo_s3>; 816 vcc14-supply = <&vcc_2v0_pldo_s3>; 817 vcca-supply = <&vcc4v0_sys>; 818 819 rk806_slave_dvs1_null: dvs1-null-pins { 820 pins = "gpio_pwrctrl1"; 821 function = "pin_fun0"; 822 }; 823 824 rk806_slave_dvs2_null: dvs2-null-pins { 825 pins = "gpio_pwrctrl2"; 826 function = "pin_fun0"; 827 }; 828 829 rk806_slave_dvs3_null: dvs3-null-pins { 830 pins = "gpio_pwrctrl3"; 831 function = "pin_fun0"; 832 }; 833 834 regulators { 835 vdd_cpu_big1_s0: dcdc-reg1 { 836 regulator-name = "vdd_cpu_big1_s0"; 837 regulator-always-on; 838 regulator-boot-on; 839 regulator-coupled-with = <&vdd_cpu_big1_mem_s0>; 840 regulator-coupled-max-spread = <10000>; 841 regulator-min-microvolt = <550000>; 842 regulator-max-microvolt = <1050000>; 843 regulator-ramp-delay = <12500>; 844 845 regulator-state-mem { 846 regulator-off-in-suspend; 847 }; 848 }; 849 850 vdd_cpu_big0_s0: dcdc-reg2 { 851 regulator-name = "vdd_cpu_big0_s0"; 852 regulator-always-on; 853 regulator-boot-on; 854 regulator-coupled-with = <&vdd_cpu_big0_mem_s0>; 855 regulator-coupled-max-spread = <10000>; 856 regulator-min-microvolt = <550000>; 857 regulator-max-microvolt = <1050000>; 858 regulator-ramp-delay = <12500>; 859 860 regulator-state-mem { 861 regulator-off-in-suspend; 862 }; 863 }; 864 865 vdd_cpu_lit_s0: dcdc-reg3 { 866 regulator-name = "vdd_cpu_lit_s0"; 867 regulator-always-on; 868 regulator-boot-on; 869 regulator-coupled-with = <&vdd_cpu_lit_mem_s0>; 870 regulator-coupled-max-spread = <10000>; 871 regulator-min-microvolt = <550000>; 872 regulator-max-microvolt = <950000>; 873 regulator-ramp-delay = <12500>; 874 875 regulator-state-mem { 876 regulator-off-in-suspend; 877 }; 878 }; 879 880 vcc_3v3_s0: dcdc-reg4 { 881 regulator-name = "vcc_3v3_s0"; 882 regulator-always-on; 883 regulator-boot-on; 884 regulator-min-microvolt = <3300000>; 885 regulator-max-microvolt = <3300000>; 886 regulator-ramp-delay = <12500>; 887 888 regulator-state-mem { 889 regulator-off-in-suspend; 890 }; 891 }; 892 893 vdd_cpu_big1_mem_s0: dcdc-reg5 { 894 regulator-name = "vdd_cpu_big1_mem_s0"; 895 regulator-always-on; 896 regulator-boot-on; 897 regulator-coupled-with = <&vdd_cpu_big1_s0>; 898 regulator-coupled-max-spread = <10000>; 899 regulator-min-microvolt = <675000>; 900 regulator-max-microvolt = <1050000>; 901 regulator-ramp-delay = <12500>; 902 903 regulator-state-mem { 904 regulator-off-in-suspend; 905 }; 906 }; 907 908 909 vdd_cpu_big0_mem_s0: dcdc-reg6 { 910 regulator-name = "vdd_cpu_big0_mem_s0"; 911 regulator-always-on; 912 regulator-boot-on; 913 regulator-coupled-with = <&vdd_cpu_big0_s0>; 914 regulator-coupled-max-spread = <10000>; 915 regulator-min-microvolt = <675000>; 916 regulator-max-microvolt = <1050000>; 917 regulator-ramp-delay = <12500>; 918 919 regulator-state-mem { 920 regulator-off-in-suspend; 921 }; 922 }; 923 924 vcc_1v8_s0: dcdc-reg7 { 925 regulator-name = "vcc_1v8_s0"; 926 regulator-always-on; 927 regulator-boot-on; 928 regulator-min-microvolt = <1800000>; 929 regulator-max-microvolt = <1800000>; 930 regulator-ramp-delay = <12500>; 931 932 regulator-state-mem { 933 regulator-off-in-suspend; 934 }; 935 }; 936 937 vdd_cpu_lit_mem_s0: dcdc-reg8 { 938 regulator-name = "vdd_cpu_lit_mem_s0"; 939 regulator-always-on; 940 regulator-boot-on; 941 regulator-coupled-with = <&vdd_cpu_lit_s0>; 942 regulator-coupled-max-spread = <10000>; 943 regulator-min-microvolt = <675000>; 944 regulator-max-microvolt = <950000>; 945 regulator-ramp-delay = <12500>; 946 947 regulator-state-mem { 948 regulator-off-in-suspend; 949 }; 950 }; 951 952 vddq_ddr_s0: dcdc-reg9 { 953 regulator-name = "vddq_ddr_s0"; 954 regulator-always-on; 955 regulator-boot-on; 956 957 regulator-state-mem { 958 regulator-off-in-suspend; 959 }; 960 }; 961 962 vdd_ddr_s0: dcdc-reg10 { 963 regulator-name = "vdd_ddr_s0"; 964 regulator-always-on; 965 regulator-boot-on; 966 regulator-min-microvolt = <675000>; 967 regulator-max-microvolt = <900000>; 968 regulator-ramp-delay = <12500>; 969 970 regulator-state-mem { 971 regulator-off-in-suspend; 972 }; 973 }; 974 975 /* reserved, unused? */ 976 vcc_1v8_cam_s0: pldo-reg1 { 977 regulator-name = "vcc_1v8_cam_s0"; 978 regulator-always-on; 979 regulator-boot-on; 980 regulator-min-microvolt = <1800000>; 981 regulator-max-microvolt = <1800000>; 982 regulator-ramp-delay = <12500>; 983 984 regulator-state-mem { 985 regulator-off-in-suspend; 986 }; 987 }; 988 989 avdd1v8_ddr_pll_s0: pldo-reg2 { 990 regulator-name = "avdd1v8_ddr_pll_s0"; 991 regulator-always-on; 992 regulator-boot-on; 993 regulator-min-microvolt = <1800000>; 994 regulator-max-microvolt = <1800000>; 995 regulator-ramp-delay = <12500>; 996 997 regulator-state-mem { 998 regulator-off-in-suspend; 999 }; 1000 }; 1001 1002 vdd_1v8_pll_s0: pldo-reg3 { 1003 regulator-name = "vdd_1v8_pll_s0"; 1004 regulator-always-on; 1005 regulator-boot-on; 1006 regulator-min-microvolt = <1800000>; 1007 regulator-max-microvolt = <1800000>; 1008 regulator-ramp-delay = <12500>; 1009 1010 regulator-state-mem { 1011 regulator-off-in-suspend; 1012 }; 1013 }; 1014 1015 /* reserved, unused? */ 1016 vcc_3v3_sd_s0: pldo-reg4 { 1017 regulator-name = "vcc_3v3_sd_s0"; 1018 regulator-always-on; 1019 regulator-boot-on; 1020 regulator-min-microvolt = <3300000>; 1021 regulator-max-microvolt = <3300000>; 1022 regulator-ramp-delay = <12500>; 1023 1024 regulator-state-mem { 1025 regulator-off-in-suspend; 1026 }; 1027 }; 1028 1029 /* reserved, unused? */ 1030 vcc_2v8_cam_s0: pldo-reg5 { 1031 regulator-name = "vcc_2v8_cam_s0"; 1032 regulator-always-on; 1033 regulator-boot-on; 1034 regulator-min-microvolt = <2800000>; 1035 regulator-max-microvolt = <2800000>; 1036 regulator-ramp-delay = <12500>; 1037 1038 regulator-state-mem { 1039 regulator-off-in-suspend; 1040 }; 1041 }; 1042 1043 /* unused */ 1044 pldo6_s3: pldo-reg6 { 1045 regulator-name = "pldo6_s3"; 1046 regulator-always-on; 1047 regulator-boot-on; 1048 regulator-min-microvolt = <1800000>; 1049 regulator-max-microvolt = <1800000>; 1050 1051 regulator-state-mem { 1052 regulator-on-in-suspend; 1053 regulator-suspend-microvolt = <1800000>; 1054 }; 1055 }; 1056 1057 vdd_0v75_pll_s0: nldo-reg1 { 1058 regulator-name = "vdd_0v75_pll_s0"; 1059 regulator-always-on; 1060 regulator-boot-on; 1061 regulator-min-microvolt = <750000>; 1062 regulator-max-microvolt = <750000>; 1063 regulator-ramp-delay = <12500>; 1064 1065 regulator-state-mem { 1066 regulator-off-in-suspend; 1067 }; 1068 }; 1069 1070 vdd_ddr_pll_s0: nldo-reg2 { 1071 regulator-name = "vdd_ddr_pll_s0"; 1072 regulator-always-on; 1073 regulator-boot-on; 1074 regulator-min-microvolt = <850000>; 1075 regulator-max-microvolt = <850000>; 1076 1077 regulator-state-mem { 1078 regulator-off-in-suspend; 1079 }; 1080 }; 1081 1082 avdd_0v85_s0: nldo-reg3 { 1083 regulator-name = "avdd_0v85_s0"; 1084 regulator-always-on; 1085 regulator-boot-on; 1086 regulator-min-microvolt = <850000>; 1087 regulator-max-microvolt = <850000>; 1088 regulator-ramp-delay = <12500>; 1089 1090 regulator-state-mem { 1091 regulator-off-in-suspend; 1092 }; 1093 }; 1094 1095 /* reserved, unused */ 1096 avdd_1v2_cam_s0: nldo-reg4 { 1097 regulator-name = "avdd_1v2_cam_s0"; 1098 regulator-always-on; 1099 regulator-boot-on; 1100 regulator-min-microvolt = <1200000>; 1101 regulator-max-microvolt = <1200000>; 1102 regulator-ramp-delay = <12500>; 1103 1104 regulator-state-mem { 1105 regulator-off-in-suspend; 1106 }; 1107 }; 1108 1109 avdd_1v2_s0: nldo-reg5 { 1110 regulator-name = "avdd_1v2_s0"; 1111 regulator-always-on; 1112 regulator-boot-on; 1113 regulator-min-microvolt = <1200000>; 1114 regulator-max-microvolt = <1200000>; 1115 regulator-ramp-delay = <12500>; 1116 1117 regulator-state-mem { 1118 regulator-off-in-suspend; 1119 }; 1120 }; 1121 }; 1122 }; 1123}; 1124 1125&tsadc { 1126 status = "okay"; 1127}; 1128 1129&u2phy2 { 1130 status = "okay"; 1131}; 1132 1133&u2phy2_host { 1134 phy-supply = <&vcc5v0_host>; 1135 status = "okay"; 1136}; 1137 1138&u2phy3 { 1139 status = "okay"; 1140}; 1141 1142&u2phy3_host { 1143 phy-supply = <&vcc5v0_host>; 1144 status = "okay"; 1145}; 1146 1147&uart2 { 1148 pinctrl-names = "default"; 1149 pinctrl-0 = <&uart2m0_xfer>; 1150 status = "okay"; 1151}; 1152 1153&usb_host0_ehci { 1154 status = "okay"; 1155}; 1156 1157&usb_host0_ohci { 1158 status = "okay"; 1159}; 1160 1161&usb_host1_ehci { 1162 status = "okay"; 1163}; 1164 1165&usb_host1_ohci { 1166 status = "okay"; 1167}; 1168