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/input/linux-event-codes.h> 7#include <dt-bindings/leds/common.h> 8#include <dt-bindings/pinctrl/rockchip.h> 9#include <dt-bindings/soc/rockchip,vop2.h> 10#include "rk3566.dtsi" 11 12/ { 13 aliases { 14 mmc1 = &sdmmc0; 15 mmc2 = &sdmmc1; 16 mmc3 = &sdmmc2; 17 }; 18 19 adc-joystick { 20 compatible = "adc-joystick"; 21 io-channels = <&adc_mux 0>, 22 <&adc_mux 1>, 23 <&adc_mux 2>, 24 <&adc_mux 3>; 25 pinctrl-0 = <&joy_mux_en>; 26 pinctrl-names = "default"; 27 poll-interval = <60>; 28 #address-cells = <1>; 29 #size-cells = <0>; 30 31 axis@0 { 32 reg = <0>; 33 abs-flat = <32>; 34 abs-fuzz = <32>; 35 abs-range = <1023 15>; 36 linux,code = <ABS_X>; 37 }; 38 39 axis@1 { 40 reg = <1>; 41 abs-flat = <32>; 42 abs-fuzz = <32>; 43 abs-range = <15 1023>; 44 linux,code = <ABS_RX>; 45 }; 46 47 axis@2 { 48 reg = <2>; 49 abs-flat = <32>; 50 abs-fuzz = <32>; 51 abs-range = <15 1023>; 52 linux,code = <ABS_Y>; 53 }; 54 55 axis@3 { 56 reg = <3>; 57 abs-flat = <32>; 58 abs-fuzz = <32>; 59 abs-range = <1023 15>; 60 linux,code = <ABS_RY>; 61 }; 62 }; 63 64 adc_mux: adc-mux { 65 compatible = "io-channel-mux"; 66 channels = "left_x", "right_x", "left_y", "right_y"; 67 #io-channel-cells = <1>; 68 io-channels = <&saradc 3>; 69 io-channel-names = "parent"; 70 mux-controls = <&gpio_mux>; 71 settle-time-us = <100>; 72 }; 73 74 backlight: backlight { 75 compatible = "pwm-backlight"; 76 power-supply = <&vcc_sys>; 77 pwms = <&pwm4 0 25000 0>; 78 }; 79 80 battery: battery { 81 compatible = "simple-battery"; 82 charge-full-design-microamp-hours = <3151000>; 83 charge-term-current-microamp = <300000>; 84 constant-charge-current-max-microamp = <2000000>; 85 constant-charge-voltage-max-microvolt = <4250000>; 86 factory-internal-resistance-micro-ohms = <117000>; 87 voltage-max-design-microvolt = <4172000>; 88 voltage-min-design-microvolt = <3400000>; 89 90 ocv-capacity-celsius = <20>; 91 ocv-capacity-table-0 = <4172000 100>, <4092000 95>, <4035000 90>, <3990000 85>, 92 <3939000 80>, <3895000 75>, <3852000 70>, <3807000 65>, 93 <3762000 60>, <3713000 55>, <3672000 50>, <3647000 45>, 94 <3629000 40>, <3613000 35>, <3598000 30>, <3578000 25>, 95 <3550000 20>, <3519000 15>, <3479000 10>, <3438000 5>, 96 <3400000 0>; 97 }; 98 99 gpio_keys_control: gpio-keys-control { 100 compatible = "gpio-keys"; 101 pinctrl-0 = <&btn_pins_ctrl>; 102 pinctrl-names = "default"; 103 104 button-a { 105 gpios = <&gpio3 RK_PC2 GPIO_ACTIVE_LOW>; 106 label = "EAST"; 107 linux,code = <BTN_EAST>; 108 }; 109 110 button-b { 111 gpios = <&gpio3 RK_PC3 GPIO_ACTIVE_LOW>; 112 label = "SOUTH"; 113 linux,code = <BTN_SOUTH>; 114 }; 115 116 button-down { 117 gpios = <&gpio3 RK_PA4 GPIO_ACTIVE_LOW>; 118 label = "DPAD-DOWN"; 119 linux,code = <BTN_DPAD_DOWN>; 120 }; 121 122 button-l1 { 123 gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_LOW>; 124 label = "TL"; 125 linux,code = <BTN_TL>; 126 }; 127 128 button-l2 { 129 gpios = <&gpio3 RK_PB2 GPIO_ACTIVE_LOW>; 130 label = "TL2"; 131 linux,code = <BTN_TL2>; 132 }; 133 134 button-left { 135 gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_LOW>; 136 label = "DPAD-LEFT"; 137 linux,code = <BTN_DPAD_LEFT>; 138 }; 139 140 button-r1 { 141 gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_LOW>; 142 label = "TR"; 143 linux,code = <BTN_TR>; 144 }; 145 146 button-r2 { 147 gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>; 148 label = "TR2"; 149 linux,code = <BTN_TR2>; 150 }; 151 152 button-right { 153 gpios = <&gpio3 RK_PA5 GPIO_ACTIVE_LOW>; 154 label = "DPAD-RIGHT"; 155 linux,code = <BTN_DPAD_RIGHT>; 156 }; 157 158 button-select { 159 gpios = <&gpio3 RK_PB6 GPIO_ACTIVE_LOW>; 160 label = "SELECT"; 161 linux,code = <BTN_SELECT>; 162 }; 163 164 button-start { 165 gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_LOW>; 166 label = "START"; 167 linux,code = <BTN_START>; 168 }; 169 170 button-thumbl { 171 gpios = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>; 172 label = "THUMBL"; 173 linux,code = <BTN_THUMBL>; 174 }; 175 176 button-thumbr { 177 gpios = <&gpio3 RK_PA2 GPIO_ACTIVE_LOW>; 178 label = "THUMBR"; 179 linux,code = <BTN_THUMBR>; 180 }; 181 182 button-up { 183 gpios = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>; 184 label = "DPAD-UP"; 185 linux,code = <BTN_DPAD_UP>; 186 }; 187 188 button-x { 189 gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>; 190 label = "NORTH"; 191 linux,code = <BTN_NORTH>; 192 }; 193 194 button-y { 195 gpios = <&gpio3 RK_PC1 GPIO_ACTIVE_LOW>; 196 label = "WEST"; 197 linux,code = <BTN_WEST>; 198 }; 199 }; 200 201 gpio_keys_vol: gpio-keys-vol { 202 compatible = "gpio-keys"; 203 autorepeat; 204 pinctrl-0 = <&btn_pins_vol>; 205 pinctrl-names = "default"; 206 207 button-vol-down { 208 gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>; 209 label = "VOLUMEDOWN"; 210 linux,code = <KEY_VOLUMEDOWN>; 211 }; 212 213 button-vol-up { 214 gpios = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>; 215 label = "VOLUMEUP"; 216 linux,code = <KEY_VOLUMEUP>; 217 }; 218 }; 219 220 gpio_mux: mux-controller { 221 compatible = "gpio-mux"; 222 mux-gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_LOW>, 223 <&gpio0 RK_PB7 GPIO_ACTIVE_LOW>; 224 #mux-control-cells = <0>; 225 }; 226 227 hdmi-con { 228 compatible = "hdmi-connector"; 229 ddc-i2c-bus = <&i2c5>; 230 type = "c"; 231 232 port { 233 hdmi_con_in: endpoint { 234 remote-endpoint = <&hdmi_out_con>; 235 }; 236 }; 237 }; 238 239 /* 240 * Device also includes an always on LED that is wired to the 5V input 241 * voltage and is on when the device is plugged in. 242 */ 243 leds: pwm-leds { 244 compatible = "pwm-leds"; 245 246 green_led: led-0 { 247 color = <LED_COLOR_ID_GREEN>; 248 function = LED_FUNCTION_STATUS; 249 max-brightness = <255>; 250 pwms = <&pwm6 0 25000 0>; 251 }; 252 253 red_led: led-1 { 254 color = <LED_COLOR_ID_RED>; 255 function = LED_FUNCTION_CHARGING; 256 max-brightness = <255>; 257 pwms = <&pwm7 0 25000 0>; 258 }; 259 }; 260 261 sdio_pwrseq: sdio-pwrseq { 262 compatible = "mmc-pwrseq-simple"; 263 clocks = <&rk817 1>; 264 clock-names = "ext_clock"; 265 pinctrl-0 = <&wifi_enable_h>; 266 pinctrl-names = "default"; 267 post-power-on-delay-ms = <200>; 268 reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_LOW>; 269 }; 270 271 /* 272 * Channels reversed for speakers. Headphones automatically switch via hardware when 273 * detected with no ability to control output in software. Headphones appear to be mono 274 * (each output channel receives all audio). No microphone support on 3.5mm jack. 275 */ 276 sound { 277 compatible = "simple-audio-card"; 278 simple-audio-card,name = "rk817_ext"; 279 simple-audio-card,format = "i2s"; 280 simple-audio-card,mclk-fs = <256>; 281 simple-audio-card,widgets = 282 "Headphone", "Headphones"; 283 simple-audio-card,routing = 284 "Headphones", "HPOL", 285 "Headphones", "HPOR"; 286 287 simple-audio-card,codec { 288 sound-dai = <&rk817>; 289 }; 290 291 simple-audio-card,cpu { 292 sound-dai = <&i2s1_8ch>; 293 }; 294 }; 295 296 vcc3v3_lcd0_n: regulator-vcc3v3-lcd0 { 297 compatible = "regulator-fixed"; 298 gpio = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>; 299 enable-active-high; 300 pinctrl-0 = <&vcc_lcd_h>; 301 pinctrl-names = "default"; 302 regulator-boot-on; 303 regulator-min-microvolt = <3300000>; 304 regulator-max-microvolt = <3300000>; 305 regulator-name = "vcc3v3_lcd0_n"; 306 vin-supply = <&vcc_3v3>; 307 regulator-state-mem { 308 regulator-off-in-suspend; 309 }; 310 }; 311 312 vcc_sys: regulator-vcc-sys { 313 compatible = "regulator-fixed"; 314 regulator-always-on; 315 regulator-boot-on; 316 regulator-min-microvolt = <3800000>; 317 regulator-max-microvolt = <3800000>; 318 regulator-name = "vcc_sys"; 319 }; 320 321 vcc_wifi: regulator-vcc-wifi { 322 compatible = "regulator-fixed"; 323 enable-active-high; 324 gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>; 325 pinctrl-0 = <&vcc_wifi_h>; 326 pinctrl-names = "default"; 327 regulator-always-on; 328 regulator-boot-on; 329 regulator-min-microvolt = <3300000>; 330 regulator-max-microvolt = <3300000>; 331 regulator-name = "vcc_wifi"; 332 }; 333}; 334 335&combphy1 { 336 status = "okay"; 337}; 338 339&cpu0 { 340 cpu-supply = <&vdd_cpu>; 341}; 342 343&cpu1 { 344 cpu-supply = <&vdd_cpu>; 345}; 346 347&cpu2 { 348 cpu-supply = <&vdd_cpu>; 349}; 350 351&cpu3 { 352 cpu-supply = <&vdd_cpu>; 353}; 354 355&dsi0 { 356 status = "okay"; 357 #address-cells = <1>; 358 #size-cells = <0>; 359 360 ports { 361 dsi0_in: port@0 { 362 reg = <0>; 363 dsi0_in_vp1: endpoint { 364 remote-endpoint = <&vp1_out_dsi0>; 365 }; 366 }; 367 368 dsi0_out: port@1 { 369 reg = <1>; 370 mipi_out_panel: endpoint { 371 remote-endpoint = <&mipi_in_panel>; 372 }; 373 }; 374 }; 375}; 376 377&dsi_dphy0 { 378 status = "okay"; 379}; 380 381&gpu { 382 mali-supply = <&vdd_gpu>; 383 status = "okay"; 384}; 385 386&hdmi { 387 ddc-i2c-bus = <&i2c5>; 388 pinctrl-0 = <&hdmitxm0_cec>; 389 pinctrl-names = "default"; 390 status = "okay"; 391}; 392 393&hdmi_in { 394 hdmi_in_vp0: endpoint { 395 remote-endpoint = <&vp0_out_hdmi>; 396 }; 397}; 398 399&hdmi_out { 400 hdmi_out_con: endpoint { 401 remote-endpoint = <&hdmi_con_in>; 402 }; 403}; 404 405&hdmi_sound { 406 status = "okay"; 407}; 408 409&i2c0 { 410 status = "okay"; 411 412 rk817: pmic@20 { 413 compatible = "rockchip,rk817"; 414 reg = <0x20>; 415 interrupt-parent = <&gpio0>; 416 interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>; 417 clock-output-names = "rk808-clkout1", "rk808-clkout2"; 418 clock-names = "mclk"; 419 clocks = <&cru I2S1_MCLKOUT_TX>; 420 assigned-clocks = <&cru I2S1_MCLKOUT_TX>; 421 assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>; 422 #clock-cells = <1>; 423 #sound-dai-cells = <0>; 424 pinctrl-names = "default"; 425 pinctrl-0 = <&i2s1m0_mclk>, <&pmic_int_l>; 426 wakeup-source; 427 428 vcc1-supply = <&vcc_sys>; 429 vcc2-supply = <&vcc_sys>; 430 vcc3-supply = <&vcc_sys>; 431 vcc4-supply = <&vcc_sys>; 432 vcc5-supply = <&vcc_sys>; 433 vcc6-supply = <&vcc_sys>; 434 vcc7-supply = <&vcc_sys>; 435 vcc8-supply = <&vcc_sys>; 436 vcc9-supply = <&dcdc_boost>; 437 438 regulators { 439 vdd_logic: DCDC_REG1 { 440 regulator-always-on; 441 regulator-boot-on; 442 regulator-min-microvolt = <500000>; 443 regulator-max-microvolt = <1350000>; 444 regulator-ramp-delay = <6001>; 445 regulator-initial-mode = <0x2>; 446 regulator-name = "vdd_logic"; 447 regulator-state-mem { 448 regulator-off-in-suspend; 449 regulator-suspend-microvolt = <900000>; 450 }; 451 }; 452 453 vdd_gpu: DCDC_REG2 { 454 regulator-always-on; 455 regulator-boot-on; 456 regulator-min-microvolt = <500000>; 457 regulator-max-microvolt = <1350000>; 458 regulator-ramp-delay = <6001>; 459 regulator-initial-mode = <0x2>; 460 regulator-name = "vdd_gpu"; 461 regulator-state-mem { 462 regulator-off-in-suspend; 463 }; 464 }; 465 466 vcc_ddr: DCDC_REG3 { 467 regulator-always-on; 468 regulator-boot-on; 469 regulator-initial-mode = <0x2>; 470 regulator-name = "vcc_ddr"; 471 regulator-state-mem { 472 regulator-on-in-suspend; 473 }; 474 }; 475 476 vcc_3v3: DCDC_REG4 { 477 regulator-always-on; 478 regulator-boot-on; 479 regulator-min-microvolt = <3300000>; 480 regulator-max-microvolt = <3300000>; 481 regulator-initial-mode = <0x2>; 482 regulator-name = "vcc_3v3"; 483 regulator-state-mem { 484 regulator-on-in-suspend; 485 regulator-suspend-microvolt = <3300000>; 486 }; 487 }; 488 489 vcca1v8_pmu: LDO_REG1 { 490 regulator-always-on; 491 regulator-boot-on; 492 regulator-min-microvolt = <1800000>; 493 regulator-max-microvolt = <1800000>; 494 regulator-name = "vcca1v8_pmu"; 495 regulator-state-mem { 496 regulator-on-in-suspend; 497 regulator-suspend-microvolt = <1800000>; 498 }; 499 }; 500 501 vdda_0v9: LDO_REG2 { 502 regulator-always-on; 503 regulator-boot-on; 504 regulator-min-microvolt = <900000>; 505 regulator-max-microvolt = <900000>; 506 regulator-name = "vdda_0v9"; 507 regulator-state-mem { 508 regulator-off-in-suspend; 509 }; 510 }; 511 512 vdda0v9_pmu: LDO_REG3 { 513 regulator-always-on; 514 regulator-boot-on; 515 regulator-min-microvolt = <900000>; 516 regulator-max-microvolt = <900000>; 517 regulator-name = "vdda0v9_pmu"; 518 regulator-state-mem { 519 regulator-on-in-suspend; 520 regulator-suspend-microvolt = <900000>; 521 }; 522 }; 523 524 vccio_acodec: LDO_REG4 { 525 regulator-always-on; 526 regulator-boot-on; 527 regulator-min-microvolt = <3300000>; 528 regulator-max-microvolt = <3300000>; 529 regulator-name = "vccio_acodec"; 530 regulator-state-mem { 531 regulator-off-in-suspend; 532 }; 533 }; 534 535 vccio_sd: LDO_REG5 { 536 regulator-always-on; 537 regulator-boot-on; 538 regulator-min-microvolt = <1800000>; 539 regulator-max-microvolt = <3300000>; 540 regulator-name = "vccio_sd"; 541 regulator-state-mem { 542 regulator-off-in-suspend; 543 }; 544 }; 545 546 vcc3v3_pmu: LDO_REG6 { 547 regulator-always-on; 548 regulator-boot-on; 549 regulator-min-microvolt = <3300000>; 550 regulator-max-microvolt = <3300000>; 551 regulator-name = "vcc3v3_pmu"; 552 regulator-state-mem { 553 regulator-on-in-suspend; 554 regulator-suspend-microvolt = <3300000>; 555 }; 556 }; 557 558 vcc_1v8: LDO_REG7 { 559 regulator-always-on; 560 regulator-boot-on; 561 regulator-min-microvolt = <1800000>; 562 regulator-max-microvolt = <1800000>; 563 regulator-name = "vcc_1v8"; 564 regulator-state-mem { 565 regulator-off-in-suspend; 566 }; 567 }; 568 569 vcc1v8_dvp: LDO_REG8 { 570 regulator-always-on; 571 regulator-boot-on; 572 regulator-min-microvolt = <1800000>; 573 regulator-max-microvolt = <3300000>; 574 regulator-name = "vcc1v8_dvp"; 575 regulator-state-mem { 576 regulator-off-in-suspend; 577 }; 578 }; 579 580 vcc2v8_dvp: LDO_REG9 { 581 regulator-always-on; 582 regulator-boot-on; 583 regulator-min-microvolt = <2800000>; 584 regulator-max-microvolt = <2800000>; 585 regulator-name = "vcc2v8_dvp"; 586 regulator-state-mem { 587 regulator-off-in-suspend; 588 }; 589 }; 590 591 dcdc_boost: BOOST { 592 regulator-always-on; 593 regulator-boot-on; 594 regulator-min-microvolt = <4700000>; 595 regulator-max-microvolt = <5400000>; 596 regulator-name = "boost"; 597 regulator-state-mem { 598 regulator-off-in-suspend; 599 }; 600 }; 601 602 otg_switch: OTG_SWITCH { 603 regulator-name = "otg_switch"; 604 regulator-state-mem { 605 regulator-off-in-suspend; 606 }; 607 }; 608 }; 609 610 rk817_charger: charger { 611 monitored-battery = <&battery>; 612 rockchip,resistor-sense-micro-ohms = <10000>; 613 rockchip,sleep-enter-current-microamp = <300000>; 614 rockchip,sleep-filter-current-microamp = <100000>; 615 }; 616 }; 617 618 vdd_cpu: regulator@1c { 619 compatible = "tcs,tcs4525"; 620 reg = <0x1c>; 621 fcs,suspend-voltage-selector = <1>; 622 regulator-always-on; 623 regulator-boot-on; 624 regulator-min-microvolt = <712500>; 625 regulator-max-microvolt = <1390000>; 626 regulator-name = "vdd_cpu"; 627 regulator-ramp-delay = <2300>; 628 vin-supply = <&vcc_sys>; 629 regulator-state-mem { 630 regulator-off-in-suspend; 631 }; 632 }; 633}; 634 635&i2c5 { 636 pinctrl-0 = <&i2c5m1_xfer>; 637 pinctrl-names = "default"; 638 status = "okay"; 639}; 640 641&i2s0_8ch { 642 status = "okay"; 643}; 644 645&i2s1_8ch { 646 pinctrl-0 = <&i2s1m0_sclktx 647 &i2s1m0_lrcktx 648 &i2s1m0_sdi0 649 &i2s1m0_sdo0>; 650 pinctrl-names = "default"; 651 rockchip,trcm-sync-tx-only; 652 status = "okay"; 653}; 654 655&pinctrl { 656 gpio-btns { 657 btn_pins_ctrl: btn-pins-ctrl { 658 rockchip,pins = 659 <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>, 660 <3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>, 661 <3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>, 662 <3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>, 663 <3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>, 664 <3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>, 665 <3 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>, 666 <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>, 667 <3 RK_PB3 RK_FUNC_GPIO &pcfg_pull_up>, 668 <3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>, 669 <3 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>, 670 <3 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>, 671 <3 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>, 672 <3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>, 673 <3 RK_PC2 RK_FUNC_GPIO &pcfg_pull_up>, 674 <3 RK_PC3 RK_FUNC_GPIO &pcfg_pull_up>; 675 }; 676 677 btn_pins_vol: btn-pins-vol { 678 rockchip,pins = 679 <3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>, 680 <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>; 681 }; 682 }; 683 684 joy-mux { 685 joy_mux_en: joy-mux-en { 686 rockchip,pins = 687 <0 RK_PB5 RK_FUNC_GPIO &pcfg_output_low>; 688 }; 689 }; 690 691 gpio-lcd { 692 lcd_rst: lcd-rst { 693 rockchip,pins = 694 <4 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; 695 }; 696 }; 697 698 pmic { 699 pmic_int_l: pmic-int-l { 700 rockchip,pins = 701 <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; 702 }; 703 }; 704 705 sdio-pwrseq { 706 wifi_enable_h: wifi-enable-h { 707 rockchip,pins = 708 <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>; 709 }; 710 }; 711 712 vcc3v3-lcd { 713 vcc_lcd_h: vcc-lcd-h { 714 rockchip,pins = 715 <0 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; 716 }; 717 }; 718 719 vcc-wifi { 720 vcc_wifi_h: vcc-wifi-h { 721 rockchip,pins = 722 <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; 723 }; 724 }; 725}; 726 727&pmu_io_domains { 728 status = "okay"; 729 pmuio1-supply = <&vcc3v3_pmu>; 730 pmuio2-supply = <&vcc3v3_pmu>; 731 vccio1-supply = <&vccio_acodec>; 732 vccio3-supply = <&vccio_sd>; 733 vccio4-supply = <&vcc_1v8>; 734 vccio5-supply = <&vcc_3v3>; 735 vccio6-supply = <&vcc1v8_dvp>; 736 vccio7-supply = <&vcc_3v3>; 737}; 738 739&pwm4 { 740 status = "okay"; 741}; 742 743&pwm6 { 744 status = "okay"; 745}; 746 747&pwm7 { 748 status = "okay"; 749}; 750 751&saradc { 752 vref-supply = <&vcc_1v8>; 753 status = "okay"; 754}; 755 756&sdmmc0 { 757 bus-width = <4>; 758 cap-sd-highspeed; 759 cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; 760 disable-wp; 761 pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>; 762 pinctrl-names = "default"; 763 sd-uhs-sdr104; 764 vmmc-supply = <&vcc_3v3>; 765 vqmmc-supply = <&vccio_sd>; 766 status = "okay"; 767}; 768 769&sdmmc1 { 770 bus-width = <4>; 771 cap-sd-highspeed; 772 cd-gpios = <&gpio2 RK_PB2 GPIO_ACTIVE_LOW>; 773 disable-wp; 774 pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk &sdmmc1_det>; 775 pinctrl-names = "default"; 776 sd-uhs-sdr104; 777 vmmc-supply = <&vcc_3v3>; 778 vqmmc-supply = <&vcc1v8_dvp>; 779 status = "okay"; 780}; 781 782&sdmmc2 { 783 bus-width = <4>; 784 cap-sd-highspeed; 785 cap-sdio-irq; 786 keep-power-in-suspend; 787 mmc-pwrseq = <&sdio_pwrseq>; 788 non-removable; 789 pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>; 790 pinctrl-names = "default"; 791 vmmc-supply = <&vcc_wifi>; 792 vqmmc-supply = <&vcca1v8_pmu>; 793 status = "okay"; 794}; 795 796&tsadc { 797 rockchip,hw-tshut-mode = <1>; 798 rockchip,hw-tshut-polarity = <0>; 799 status = "okay"; 800}; 801 802&uart1 { 803 pinctrl-0 = <&uart1m1_xfer &uart1m1_ctsn &uart1m1_rtsn>; 804 pinctrl-names = "default"; 805 uart-has-rtscts; 806 status = "okay"; 807 808 bluetooth { 809 compatible = "realtek,rtl8821cs-bt", "realtek,rtl8723bs-bt"; 810 device-wake-gpios = <&gpio4 4 GPIO_ACTIVE_HIGH>; 811 enable-gpios = <&gpio4 3 GPIO_ACTIVE_HIGH>; 812 host-wake-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; 813 }; 814}; 815 816&usb_host0_xhci { 817 dr_mode = "peripheral"; 818 phys = <&usb2phy0_otg>; 819 phy-names = "usb2-phy"; 820 status = "okay"; 821}; 822 823&usb_host1_ehci { 824 status = "okay"; 825}; 826 827&usb_host1_ohci { 828 status = "okay"; 829}; 830 831&usb_host1_xhci { 832 phy-names = "usb2-phy", "usb3-phy"; 833 phys = <&usb2phy1_host>, <&combphy1 PHY_TYPE_USB3>; 834 status = "okay"; 835}; 836 837&usb2phy0 { 838 status = "okay"; 839}; 840 841&usb2phy0_otg { 842 status = "okay"; 843}; 844 845&usb2phy1 { 846 status = "okay"; 847}; 848 849&usb2phy1_host { 850 status = "okay"; 851}; 852 853&vop { 854 assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>; 855 assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>; 856 status = "okay"; 857}; 858 859&vop_mmu { 860 status = "okay"; 861}; 862 863&vp0 { 864 vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 { 865 reg = <ROCKCHIP_VOP2_EP_HDMI0>; 866 remote-endpoint = <&hdmi_in_vp0>; 867 }; 868}; 869 870&vp1 { 871 vp1_out_dsi0: endpoint@ROCKCHIP_VOP2_EP_MIPI0 { 872 reg = <ROCKCHIP_VOP2_EP_MIPI0>; 873 remote-endpoint = <&dsi0_in_vp1>; 874 }; 875}; 876