Back to home page

OSCL-LXR

 
 

    


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 };