0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Copyright (c) 2017 T-Chip Intelligent Technology Co., Ltd
0004 */
0005
0006 /dts-v1/;
0007 #include <dt-bindings/input/linux-event-codes.h>
0008 #include <dt-bindings/pwm/pwm.h>
0009 #include "rk3399.dtsi"
0010 #include "rk3399-opp.dtsi"
0011
0012 / {
0013 model = "Firefly ROC-RK3399-PC Board";
0014 compatible = "firefly,roc-rk3399-pc", "rockchip,rk3399";
0015
0016 aliases {
0017 mmc0 = &sdmmc;
0018 mmc1 = &sdhci;
0019 };
0020
0021 chosen {
0022 stdout-path = "serial2:1500000n8";
0023 };
0024
0025 backlight: backlight {
0026 compatible = "pwm-backlight";
0027 pwms = <&pwm0 0 25000 0>;
0028 };
0029
0030 clkin_gmac: external-gmac-clock {
0031 compatible = "fixed-clock";
0032 clock-frequency = <125000000>;
0033 clock-output-names = "clkin_gmac";
0034 #clock-cells = <0>;
0035 };
0036
0037 adc-keys {
0038 compatible = "adc-keys";
0039 io-channels = <&saradc 1>;
0040 io-channel-names = "buttons";
0041 keyup-threshold-microvolt = <1500000>;
0042 poll-interval = <100>;
0043
0044 recovery {
0045 label = "Recovery";
0046 linux,code = <KEY_VENDOR>;
0047 press-threshold-microvolt = <18000>;
0048 };
0049 };
0050
0051 gpio-keys {
0052 compatible = "gpio-keys";
0053 autorepeat;
0054 pinctrl-names = "default";
0055 pinctrl-0 = <&pwr_key_l>;
0056
0057 key-power {
0058 debounce-interval = <100>;
0059 gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
0060 label = "GPIO Key Power";
0061 linux,code = <KEY_POWER>;
0062 wakeup-source;
0063 };
0064 };
0065
0066 ir-receiver {
0067 compatible = "gpio-ir-receiver";
0068 gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
0069 pinctrl-names = "default";
0070 pinctrl-0 = <&ir_int>;
0071 };
0072
0073 leds {
0074 compatible = "gpio-leds";
0075 pinctrl-names = "default";
0076 pinctrl-0 = <&work_led_pin>, <&diy_led_pin>, <&yellow_led_pin>;
0077
0078 work_led: led-0 {
0079 label = "green:work";
0080 gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
0081 default-state = "on";
0082 linux,default-trigger = "heartbeat";
0083 };
0084
0085 diy_led: led-1 {
0086 label = "red:diy";
0087 gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
0088 default-state = "off";
0089 linux,default-trigger = "mmc2";
0090 };
0091
0092 yellow_led: led-2 {
0093 label = "yellow:yellow-led";
0094 gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
0095 default-state = "off";
0096 linux,default-trigger = "mmc1";
0097 };
0098 };
0099
0100 sdio_pwrseq: sdio-pwrseq {
0101 compatible = "mmc-pwrseq-simple";
0102 clocks = <&rk808 1>;
0103 clock-names = "ext_clock";
0104 pinctrl-names = "default";
0105 pinctrl-0 = <&wifi_enable_h>;
0106
0107 /*
0108 * On the module itself this is one of these (depending
0109 * on the actual card populated):
0110 * - SDIO_RESET_L_WL_REG_ON
0111 * - PDN (power down when low)
0112 */
0113 reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
0114 };
0115
0116 vcc_vbus_typec0: vcc-vbus-typec0 {
0117 compatible = "regulator-fixed";
0118 regulator-name = "vcc_vbus_typec0";
0119 regulator-always-on;
0120 regulator-boot-on;
0121 regulator-min-microvolt = <5000000>;
0122 regulator-max-microvolt = <5000000>;
0123 };
0124
0125 sys_12v: sys-12v {
0126 compatible = "regulator-fixed";
0127 regulator-name = "sys_12v";
0128 regulator-always-on;
0129 regulator-boot-on;
0130 vin-supply = <&dc_12v>;
0131 };
0132
0133 /* switched by pmic_sleep */
0134 vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
0135 compatible = "regulator-fixed";
0136 regulator-name = "vcc1v8_s3";
0137 regulator-always-on;
0138 regulator-boot-on;
0139 regulator-min-microvolt = <1800000>;
0140 regulator-max-microvolt = <1800000>;
0141 vin-supply = <&vcc_1v8>;
0142 };
0143
0144 vcc3v0_sd: vcc3v0-sd {
0145 compatible = "regulator-fixed";
0146 enable-active-high;
0147 gpio = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
0148 pinctrl-names = "default";
0149 pinctrl-0 = <&vcc3v0_sd_en>;
0150 regulator-name = "vcc3v0_sd";
0151 regulator-boot-on;
0152 regulator-min-microvolt = <3000000>;
0153 regulator-max-microvolt = <3000000>;
0154 vin-supply = <&vcc3v3_sys>;
0155 };
0156
0157 vcc3v3_sys: vcc3v3-sys {
0158 compatible = "regulator-fixed";
0159 regulator-name = "vcc3v3_sys";
0160 regulator-always-on;
0161 regulator-boot-on;
0162 regulator-min-microvolt = <3300000>;
0163 regulator-max-microvolt = <3300000>;
0164 vin-supply = <&sys_12v>;
0165 };
0166
0167 vcca_0v9: vcca-0v9 {
0168 compatible = "regulator-fixed";
0169 regulator-name = "vcca_0v9";
0170 regulator-always-on;
0171 regulator-boot-on;
0172 regulator-min-microvolt = <900000>;
0173 regulator-max-microvolt = <900000>;
0174 vin-supply = <&vcc3v3_sys>;
0175 };
0176
0177 /* Actually 3 regulators (host0, 1, 2) controlled by the same gpio */
0178 vcc5v0_host: vcc5v0-host-regulator {
0179 compatible = "regulator-fixed";
0180 enable-active-high;
0181 gpio = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>;
0182 pinctrl-names = "default";
0183 pinctrl-0 = <&vcc5v0_host_en &hub_rst>;
0184 regulator-name = "vcc5v0_host";
0185 vin-supply = <&vcc_sys>;
0186 };
0187
0188 vcc_vbus_typec1: vcc-vbus-typec1 {
0189 compatible = "regulator-fixed";
0190 enable-active-high;
0191 gpio = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>;
0192 pinctrl-names = "default";
0193 pinctrl-0 = <&vcc_vbus_typec1_en>;
0194 regulator-name = "vcc_vbus_typec1";
0195 regulator-always-on;
0196 vin-supply = <&vcc_sys>;
0197 };
0198
0199 vcc_sys: vcc-sys {
0200 compatible = "regulator-fixed";
0201 enable-active-high;
0202 gpio = <&gpio2 RK_PA6 GPIO_ACTIVE_HIGH>;
0203 pinctrl-names = "default";
0204 pinctrl-0 = <&vcc_sys_en>;
0205 regulator-name = "vcc_sys";
0206 regulator-boot-on;
0207 regulator-min-microvolt = <5000000>;
0208 regulator-max-microvolt = <5000000>;
0209 vin-supply = <&sys_12v>;
0210 };
0211
0212 vdd_log: vdd-log {
0213 compatible = "pwm-regulator";
0214 pwms = <&pwm2 0 25000 1>;
0215 regulator-name = "vdd_log";
0216 regulator-always-on;
0217 regulator-boot-on;
0218 regulator-min-microvolt = <450000>;
0219 regulator-max-microvolt = <1400000>;
0220 pwm-supply = <&vcc3v3_sys>;
0221 };
0222 };
0223
0224 &cpu_l0 {
0225 cpu-supply = <&vdd_cpu_l>;
0226 };
0227
0228 &cpu_l1 {
0229 cpu-supply = <&vdd_cpu_l>;
0230 };
0231
0232 &cpu_l2 {
0233 cpu-supply = <&vdd_cpu_l>;
0234 };
0235
0236 &cpu_l3 {
0237 cpu-supply = <&vdd_cpu_l>;
0238 };
0239
0240 &cpu_b0 {
0241 cpu-supply = <&vdd_cpu_b>;
0242 };
0243
0244 &cpu_b1 {
0245 cpu-supply = <&vdd_cpu_b>;
0246 };
0247
0248 &emmc_phy {
0249 status = "okay";
0250 };
0251
0252 &gmac {
0253 assigned-clocks = <&cru SCLK_RMII_SRC>;
0254 assigned-clock-parents = <&clkin_gmac>;
0255 clock_in_out = "input";
0256 phy-supply = <&vcc_lan>;
0257 phy-mode = "rgmii";
0258 pinctrl-names = "default";
0259 pinctrl-0 = <&rgmii_pins>;
0260 snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
0261 snps,reset-active-low;
0262 snps,reset-delays-us = <0 10000 50000>;
0263 tx_delay = <0x28>;
0264 rx_delay = <0x11>;
0265 status = "okay";
0266 };
0267
0268 &gpu {
0269 mali-supply = <&vdd_gpu>;
0270 status = "okay";
0271 };
0272
0273 &hdmi {
0274 ddc-i2c-bus = <&i2c3>;
0275 pinctrl-names = "default";
0276 pinctrl-0 = <&hdmi_cec>;
0277 status = "okay";
0278 };
0279
0280 &hdmi_sound {
0281 status = "okay";
0282 };
0283
0284 &i2c0 {
0285 clock-frequency = <400000>;
0286 i2c-scl-rising-time-ns = <168>;
0287 i2c-scl-falling-time-ns = <4>;
0288 status = "okay";
0289
0290 rk808: pmic@1b {
0291 compatible = "rockchip,rk808";
0292 reg = <0x1b>;
0293 interrupt-parent = <&gpio1>;
0294 interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
0295 #clock-cells = <1>;
0296 clock-output-names = "xin32k", "rk808-clkout2";
0297 pinctrl-names = "default";
0298 pinctrl-0 = <&pmic_int_l>;
0299 rockchip,system-power-controller;
0300 wakeup-source;
0301
0302 vcc1-supply = <&vcc3v3_sys>;
0303 vcc2-supply = <&vcc3v3_sys>;
0304 vcc3-supply = <&vcc3v3_sys>;
0305 vcc4-supply = <&vcc3v3_sys>;
0306 vcc6-supply = <&vcc3v3_sys>;
0307 vcc7-supply = <&vcc3v3_sys>;
0308 vcc8-supply = <&vcc3v3_sys>;
0309 vcc9-supply = <&vcc3v3_sys>;
0310 vcc10-supply = <&vcc3v3_sys>;
0311 vcc11-supply = <&vcc3v3_sys>;
0312 vcc12-supply = <&vcc3v3_sys>;
0313 vddio-supply = <&vcc_3v0>;
0314
0315 regulators {
0316 vdd_center: DCDC_REG1 {
0317 regulator-name = "vdd_center";
0318 regulator-always-on;
0319 regulator-boot-on;
0320 regulator-min-microvolt = <750000>;
0321 regulator-max-microvolt = <1350000>;
0322 regulator-ramp-delay = <6001>;
0323 regulator-state-mem {
0324 regulator-off-in-suspend;
0325 };
0326 };
0327
0328 vdd_cpu_l: DCDC_REG2 {
0329 regulator-name = "vdd_cpu_l";
0330 regulator-always-on;
0331 regulator-boot-on;
0332 regulator-min-microvolt = <750000>;
0333 regulator-max-microvolt = <1350000>;
0334 regulator-ramp-delay = <6001>;
0335 regulator-state-mem {
0336 regulator-off-in-suspend;
0337 };
0338 };
0339
0340 vcc_ddr: DCDC_REG3 {
0341 regulator-name = "vcc_ddr";
0342 regulator-always-on;
0343 regulator-boot-on;
0344 regulator-state-mem {
0345 regulator-on-in-suspend;
0346 };
0347 };
0348
0349 vcc_1v8: DCDC_REG4 {
0350 regulator-name = "vcc_1v8";
0351 regulator-always-on;
0352 regulator-boot-on;
0353 regulator-min-microvolt = <1800000>;
0354 regulator-max-microvolt = <1800000>;
0355 regulator-state-mem {
0356 regulator-on-in-suspend;
0357 regulator-suspend-microvolt = <1800000>;
0358 };
0359 };
0360
0361 vcca1v8_codec: LDO_REG1 {
0362 regulator-name = "vcca1v8_codec";
0363 regulator-always-on;
0364 regulator-boot-on;
0365 regulator-min-microvolt = <1800000>;
0366 regulator-max-microvolt = <1800000>;
0367 regulator-state-mem {
0368 regulator-off-in-suspend;
0369 };
0370 };
0371
0372 vcc1v8_hdmi: LDO_REG2 {
0373 regulator-name = "vcc1v8_hdmi";
0374 regulator-always-on;
0375 regulator-boot-on;
0376 regulator-min-microvolt = <1800000>;
0377 regulator-max-microvolt = <1800000>;
0378 regulator-state-mem {
0379 regulator-off-in-suspend;
0380 };
0381 };
0382
0383 vcc1v8_pmu: LDO_REG3 {
0384 regulator-name = "vcc1v8_pmu";
0385 regulator-always-on;
0386 regulator-boot-on;
0387 regulator-min-microvolt = <1800000>;
0388 regulator-max-microvolt = <1800000>;
0389 regulator-state-mem {
0390 regulator-on-in-suspend;
0391 regulator-suspend-microvolt = <1800000>;
0392 };
0393 };
0394
0395 vcc_sdio: LDO_REG4 {
0396 regulator-name = "vcc_sdio";
0397 regulator-always-on;
0398 regulator-boot-on;
0399 regulator-min-microvolt = <1800000>;
0400 regulator-max-microvolt = <3000000>;
0401 regulator-state-mem {
0402 regulator-on-in-suspend;
0403 regulator-suspend-microvolt = <3000000>;
0404 };
0405 };
0406
0407 vcca3v0_codec: LDO_REG5 {
0408 regulator-name = "vcca3v0_codec";
0409 regulator-always-on;
0410 regulator-boot-on;
0411 regulator-min-microvolt = <3000000>;
0412 regulator-max-microvolt = <3000000>;
0413 regulator-state-mem {
0414 regulator-off-in-suspend;
0415 };
0416 };
0417
0418 vcc_1v5: LDO_REG6 {
0419 regulator-name = "vcc_1v5";
0420 regulator-always-on;
0421 regulator-boot-on;
0422 regulator-min-microvolt = <1500000>;
0423 regulator-max-microvolt = <1500000>;
0424 regulator-state-mem {
0425 regulator-on-in-suspend;
0426 regulator-suspend-microvolt = <1500000>;
0427 };
0428 };
0429
0430 vcca0v9_hdmi: LDO_REG7 {
0431 regulator-name = "vcca0v9_hdmi";
0432 regulator-always-on;
0433 regulator-boot-on;
0434 regulator-min-microvolt = <900000>;
0435 regulator-max-microvolt = <900000>;
0436 regulator-state-mem {
0437 regulator-off-in-suspend;
0438 };
0439 };
0440
0441 vcc_3v0: LDO_REG8 {
0442 regulator-name = "vcc_3v0";
0443 regulator-always-on;
0444 regulator-boot-on;
0445 regulator-min-microvolt = <3000000>;
0446 regulator-max-microvolt = <3000000>;
0447 regulator-state-mem {
0448 regulator-on-in-suspend;
0449 regulator-suspend-microvolt = <3000000>;
0450 };
0451 };
0452
0453 vcc3v3_s3: vcc_lan: SWITCH_REG1 {
0454 regulator-name = "vcc3v3_s3";
0455 regulator-always-on;
0456 regulator-boot-on;
0457 regulator-state-mem {
0458 regulator-off-in-suspend;
0459 };
0460 };
0461
0462 vcc3v3_s0: SWITCH_REG2 {
0463 regulator-name = "vcc3v3_s0";
0464 regulator-always-on;
0465 regulator-boot-on;
0466 regulator-state-mem {
0467 regulator-off-in-suspend;
0468 };
0469 };
0470 };
0471 };
0472
0473 vdd_cpu_b: regulator@40 {
0474 compatible = "silergy,syr827";
0475 reg = <0x40>;
0476 fcs,suspend-voltage-selector = <1>;
0477 pinctrl-names = "default";
0478 pinctrl-0 = <&vsel1_pin>;
0479 regulator-name = "vdd_cpu_b";
0480 regulator-min-microvolt = <712500>;
0481 regulator-max-microvolt = <1500000>;
0482 regulator-ramp-delay = <1000>;
0483 regulator-always-on;
0484 regulator-boot-on;
0485 vin-supply = <&vcc3v3_sys>;
0486
0487 regulator-state-mem {
0488 regulator-off-in-suspend;
0489 };
0490 };
0491
0492 vdd_gpu: regulator@41 {
0493 compatible = "silergy,syr828";
0494 reg = <0x41>;
0495 fcs,suspend-voltage-selector = <1>;
0496 pinctrl-names = "default";
0497 pinctrl-0 = <&vsel2_pin>;
0498 regulator-name = "vdd_gpu";
0499 regulator-min-microvolt = <712500>;
0500 regulator-max-microvolt = <1500000>;
0501 regulator-ramp-delay = <1000>;
0502 regulator-always-on;
0503 regulator-boot-on;
0504 vin-supply = <&vcc3v3_sys>;
0505
0506 regulator-state-mem {
0507 regulator-off-in-suspend;
0508 };
0509 };
0510 };
0511
0512 &i2c1 {
0513 i2c-scl-rising-time-ns = <300>;
0514 i2c-scl-falling-time-ns = <15>;
0515 status = "okay";
0516 };
0517
0518 &i2c3 {
0519 i2c-scl-rising-time-ns = <450>;
0520 i2c-scl-falling-time-ns = <15>;
0521 status = "okay";
0522 };
0523
0524 &i2c4 {
0525 i2c-scl-rising-time-ns = <600>;
0526 i2c-scl-falling-time-ns = <20>;
0527 status = "okay";
0528
0529 fusb1: usb-typec@22 {
0530 compatible = "fcs,fusb302";
0531 reg = <0x22>;
0532 interrupt-parent = <&gpio1>;
0533 interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
0534 pinctrl-names = "default";
0535 pinctrl-0 = <&fusb1_int>;
0536 vbus-supply = <&vcc_vbus_typec1>;
0537 status = "okay";
0538 };
0539 };
0540
0541 &i2c7 {
0542 i2c-scl-rising-time-ns = <600>;
0543 i2c-scl-falling-time-ns = <20>;
0544 status = "okay";
0545
0546 fusb0: usb-typec@22 {
0547 compatible = "fcs,fusb302";
0548 reg = <0x22>;
0549 interrupt-parent = <&gpio1>;
0550 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
0551 pinctrl-names = "default";
0552 pinctrl-0 = <&fusb0_int>;
0553 vbus-supply = <&vcc_vbus_typec0>;
0554 status = "okay";
0555 };
0556
0557 mp8859: regulator@66 {
0558 compatible = "mps,mp8859";
0559 reg = <0x66>;
0560 dc_12v: mp8859_dcdc {
0561 regulator-name = "dc_12v";
0562 regulator-min-microvolt = <12000000>;
0563 regulator-max-microvolt = <12000000>;
0564 regulator-always-on;
0565 regulator-boot-on;
0566 vin-supply = <&vcc_vbus_typec0>;
0567
0568 regulator-state-mem {
0569 regulator-on-in-suspend;
0570 regulator-suspend-microvolt = <12000000>;
0571 };
0572 };
0573 };
0574 };
0575
0576 &i2s0 {
0577 rockchip,playback-channels = <8>;
0578 rockchip,capture-channels = <8>;
0579 status = "okay";
0580 };
0581
0582 &i2s1 {
0583 rockchip,playback-channels = <2>;
0584 rockchip,capture-channels = <2>;
0585 status = "okay";
0586 };
0587
0588 &i2s2 {
0589 status = "okay";
0590 };
0591
0592 &io_domains {
0593 audio-supply = <&vcca1v8_codec>;
0594 bt656-supply = <&vcc_3v0>;
0595 gpio1830-supply = <&vcc_3v0>;
0596 sdmmc-supply = <&vcc_sdio>;
0597 status = "okay";
0598 };
0599
0600 &pmu_io_domains {
0601 pmu1830-supply = <&vcc_3v0>;
0602 status = "okay";
0603 };
0604
0605 &pinctrl {
0606 buttons {
0607 pwr_key_l: pwr-key-l {
0608 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
0609 };
0610 };
0611
0612 ir {
0613 ir_int: ir-int {
0614 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
0615 };
0616 };
0617
0618 lcd-panel {
0619 lcd_panel_reset: lcd-panel-reset {
0620 rockchip,pins = <4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_up>;
0621 };
0622 };
0623
0624 leds {
0625 diy_led_pin: diy-led-pin {
0626 rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
0627 };
0628
0629 work_led_pin: work-led-pin {
0630 rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
0631 };
0632
0633 yellow_led_pin: yellow-led-pin {
0634 rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
0635 };
0636 };
0637
0638 pmic {
0639 vsel1_pin: vsel1-pin {
0640 rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
0641 };
0642
0643 vsel2_pin: vsel2-pin {
0644 rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
0645 };
0646 };
0647
0648 sdio-pwrseq {
0649 wifi_enable_h: wifi-enable-h {
0650 rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
0651 };
0652 };
0653
0654 sdmmc {
0655 vcc3v0_sd_en: vcc3v0-sd-en {
0656 rockchip,pins = <4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
0657 };
0658 };
0659
0660 pmic {
0661 pmic_int_l: pmic-int-l {
0662 rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
0663 };
0664 };
0665
0666 usb2 {
0667 vcc5v0_host_en: vcc5v0-host-en {
0668 rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
0669 };
0670
0671 vcc_sys_en: vcc-sys-en {
0672 rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
0673 };
0674
0675 hub_rst: hub-rst {
0676 rockchip,pins = <2 RK_PA4 RK_FUNC_GPIO &pcfg_output_high>;
0677 };
0678 };
0679
0680 usb-typec {
0681 vcc_vbus_typec1_en: vcc-vbus-typec1-en {
0682 rockchip,pins = <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
0683 };
0684 };
0685
0686 fusb30x {
0687 fusb0_int: fusb0-int {
0688 rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
0689 };
0690
0691 fusb1_int: fusb1-int {
0692 rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
0693 };
0694 };
0695 };
0696
0697 &pwm0 {
0698 status = "okay";
0699 };
0700
0701 &pwm2 {
0702 status = "okay";
0703 };
0704
0705 &saradc {
0706 vref-supply = <&vcca1v8_s3>;
0707 status = "okay";
0708 };
0709
0710 &sdmmc {
0711 bus-width = <4>;
0712 cap-sd-highspeed;
0713 cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
0714 disable-wp;
0715 max-frequency = <150000000>;
0716 pinctrl-names = "default";
0717 pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>;
0718 sd-uhs-sdr104;
0719 vmmc-supply = <&vcc3v0_sd>;
0720 vqmmc-supply = <&vcc_sdio>;
0721 status = "okay";
0722 };
0723
0724 &sdhci {
0725 bus-width = <8>;
0726 non-removable;
0727 status = "okay";
0728 };
0729
0730 &spi1 {
0731 status = "okay";
0732
0733 flash@0 {
0734 compatible = "jedec,spi-nor";
0735 reg = <0>;
0736 spi-max-frequency = <10000000>;
0737 };
0738 };
0739
0740 &tcphy0 {
0741 status = "okay";
0742 };
0743
0744 &tcphy1 {
0745 status = "okay";
0746 };
0747
0748 &tsadc {
0749 /* tshut mode 0:CRU 1:GPIO */
0750 rockchip,hw-tshut-mode = <1>;
0751 /* tshut polarity 0:LOW 1:HIGH */
0752 rockchip,hw-tshut-polarity = <1>;
0753 status = "okay";
0754 };
0755
0756 &u2phy0 {
0757 status = "okay";
0758
0759 u2phy0_otg: otg-port {
0760 phy-supply = <&vcc_vbus_typec0>;
0761 status = "okay";
0762 };
0763
0764 u2phy0_host: host-port {
0765 phy-supply = <&vcc5v0_host>;
0766 status = "okay";
0767 };
0768 };
0769
0770 &u2phy1 {
0771 status = "okay";
0772
0773 u2phy1_otg: otg-port {
0774 phy-supply = <&vcc_vbus_typec1>;
0775 status = "okay";
0776 };
0777
0778 u2phy1_host: host-port {
0779 phy-supply = <&vcc5v0_host>;
0780 status = "okay";
0781 };
0782 };
0783
0784 &uart0 {
0785 pinctrl-names = "default";
0786 pinctrl-0 = <&uart0_xfer &uart0_cts>;
0787 status = "okay";
0788 };
0789
0790 &uart2 {
0791 status = "okay";
0792 };
0793
0794 &usb_host0_ehci {
0795 status = "okay";
0796 };
0797
0798 &usb_host0_ohci {
0799 status = "okay";
0800 };
0801
0802 &usb_host1_ehci {
0803 status = "okay";
0804 };
0805
0806 &usb_host1_ohci {
0807 status = "okay";
0808 };
0809
0810 &usbdrd3_0 {
0811 status = "okay";
0812 };
0813
0814 &usbdrd_dwc3_0 {
0815 status = "okay";
0816 };
0817
0818 &usbdrd3_1 {
0819 status = "okay";
0820 };
0821
0822 &usbdrd_dwc3_1 {
0823 status = "okay";
0824 dr_mode = "host";
0825 };
0826
0827 &vopb {
0828 status = "okay";
0829 };
0830
0831 &vopb_mmu {
0832 status = "okay";
0833 };
0834
0835 &vopl {
0836 status = "okay";
0837 };
0838
0839 &vopl_mmu {
0840 status = "okay";
0841 };