Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd.
0004  */
0005 
0006 /dts-v1/;
0007 
0008 #include "dt-bindings/pwm/pwm.h"
0009 #include "dt-bindings/input/input.h"
0010 #include <dt-bindings/interrupt-controller/irq.h>
0011 #include "dt-bindings/usb/pd.h"
0012 #include "rk3399.dtsi"
0013 #include "rk3399-opp.dtsi"
0014 
0015 / {
0016         model = "Orange Pi RK3399 Board";
0017         compatible = "rockchip,rk3399-orangepi", "rockchip,rk3399";
0018 
0019         aliases {
0020                 mmc0 = &sdio0;
0021                 mmc1 = &sdmmc;
0022                 mmc2 = &sdhci;
0023         };
0024 
0025         chosen {
0026                 stdout-path = "serial2:1500000n8";
0027         };
0028 
0029         clkin_gmac: external-gmac-clock {
0030                 compatible = "fixed-clock";
0031                 clock-frequency = <125000000>;
0032                 clock-output-names = "clkin_gmac";
0033                 #clock-cells = <0>;
0034         };
0035 
0036         adc-keys {
0037                 compatible = "adc-keys";
0038                 io-channels = <&saradc 1>;
0039                 io-channel-names = "buttons";
0040                 keyup-threshold-microvolt = <1800000>;
0041                 poll-interval = <100>;
0042 
0043                 button-up {
0044                         label = "Volume Up";
0045                         linux,code = <KEY_VOLUMEUP>;
0046                         press-threshold-microvolt = <100000>;
0047                 };
0048 
0049                 button-down {
0050                         label = "Volume Down";
0051                         linux,code = <KEY_VOLUMEDOWN>;
0052                         press-threshold-microvolt = <300000>;
0053                 };
0054 
0055                 back {
0056                         label = "Back";
0057                         linux,code = <KEY_BACK>;
0058                         press-threshold-microvolt = <985000>;
0059                 };
0060 
0061                 menu {
0062                         label = "Menu";
0063                         linux,code = <KEY_MENU>;
0064                         press-threshold-microvolt = <1314000>;
0065                 };
0066         };
0067 
0068         dc_12v: dc-12v {
0069                 compatible = "regulator-fixed";
0070                 regulator-name = "dc_12v";
0071                 regulator-always-on;
0072                 regulator-boot-on;
0073                 regulator-min-microvolt = <12000000>;
0074                 regulator-max-microvolt = <12000000>;
0075         };
0076 
0077         keys: gpio-keys {
0078                 compatible = "gpio-keys";
0079                 autorepeat;
0080 
0081                 key-power {
0082                         debounce-interval = <100>;
0083                         gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
0084                         label = "GPIO Power";
0085                         linux,code = <KEY_POWER>;
0086                         linux,input-type = <1>;
0087                         pinctrl-names = "default";
0088                         pinctrl-0 = <&pwr_btn>;
0089                         wakeup-source;
0090                 };
0091         };
0092 
0093         sdio_pwrseq: sdio-pwrseq {
0094                 compatible = "mmc-pwrseq-simple";
0095                 clocks = <&rk808 1>;
0096                 clock-names = "ext_clock";
0097                 pinctrl-names = "default";
0098                 pinctrl-0 = <&wifi_reg_on_h>;
0099                 reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
0100         };
0101 
0102         /* switched by pmic_sleep */
0103         vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
0104                 compatible = "regulator-fixed";
0105                 regulator-name = "vcc1v8_s3";
0106                 regulator-always-on;
0107                 regulator-boot-on;
0108                 regulator-min-microvolt = <1800000>;
0109                 regulator-max-microvolt = <1800000>;
0110                 vin-supply = <&vcc_1v8>;
0111         };
0112 
0113         vcc3v0_sd: vcc3v0-sd {
0114                 compatible = "regulator-fixed";
0115                 enable-active-high;
0116                 gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
0117                 pinctrl-names = "default";
0118                 pinctrl-0 = <&sdmmc0_pwr_h>;
0119                 regulator-boot-on;
0120                 regulator-max-microvolt = <3000000>;
0121                 regulator-min-microvolt = <3000000>;
0122                 regulator-name = "vcc3v0_sd";
0123                 vin-supply = <&vcc3v3_sys>;
0124         };
0125 
0126         vcc3v3_sys: vcc3v3-sys {
0127                 compatible = "regulator-fixed";
0128                 regulator-name = "vcc3v3_sys";
0129                 regulator-always-on;
0130                 regulator-boot-on;
0131                 regulator-min-microvolt = <3300000>;
0132                 regulator-max-microvolt = <3300000>;
0133                 vin-supply = <&vcc_sys>;
0134         };
0135 
0136         vcc5v0_host: vcc5v0-host-regulator {
0137                 compatible = "regulator-fixed";
0138                 enable-active-high;
0139                 gpio = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
0140                 pinctrl-names = "default";
0141                 pinctrl-0 = <&vcc5v0_host_en>;
0142                 regulator-name = "vcc5v0_host";
0143                 regulator-always-on;
0144                 vin-supply = <&vcc_sys>;
0145         };
0146 
0147         vbus_typec: vbus-typec-regulator {
0148                 compatible = "regulator-fixed";
0149                 enable-active-high;
0150                 gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
0151                 pinctrl-names = "default";
0152                 pinctrl-0 = <&vcc5v0_typec_en>;
0153                 regulator-name = "vbus_typec";
0154                 vin-supply = <&vcc_sys>;
0155         };
0156 
0157         vcc_sys: vcc-sys {
0158                 compatible = "regulator-fixed";
0159                 regulator-name = "vcc_sys";
0160                 regulator-always-on;
0161                 regulator-boot-on;
0162                 regulator-min-microvolt = <5000000>;
0163                 regulator-max-microvolt = <5000000>;
0164                 vin-supply = <&dc_12v>;
0165         };
0166 
0167         vdd_log: vdd-log {
0168                 compatible = "pwm-regulator";
0169                 pwms = <&pwm2 0 25000 1>;
0170                 pwm-supply = <&vcc_sys>;
0171                 regulator-name = "vdd_log";
0172                 regulator-always-on;
0173                 regulator-boot-on;
0174                 regulator-min-microvolt = <800000>;
0175                 regulator-max-microvolt = <1400000>;
0176         };
0177 };
0178 
0179 &cpu_l0 {
0180         cpu-supply = <&vdd_cpu_l>;
0181 };
0182 
0183 &cpu_l1 {
0184         cpu-supply = <&vdd_cpu_l>;
0185 };
0186 
0187 &cpu_l2 {
0188         cpu-supply = <&vdd_cpu_l>;
0189 };
0190 
0191 &cpu_l3 {
0192         cpu-supply = <&vdd_cpu_l>;
0193 };
0194 
0195 &cpu_b0 {
0196         cpu-supply = <&vdd_cpu_b>;
0197 };
0198 
0199 &cpu_b1 {
0200         cpu-supply = <&vdd_cpu_b>;
0201 };
0202 
0203 &emmc_phy {
0204         status = "okay";
0205 };
0206 
0207 &gmac {
0208         assigned-clocks = <&cru SCLK_RMII_SRC>;
0209         assigned-clock-parents = <&clkin_gmac>;
0210         clock_in_out = "input";
0211         phy-supply = <&vcc3v3_s3>;
0212         phy-mode = "rgmii";
0213         phy-handle = <&rtl8211e>;
0214         pinctrl-names = "default";
0215         pinctrl-0 = <&rgmii_pins>, <&phy_intb>, <&phy_rstb>;
0216         tx_delay = <0x28>;
0217         rx_delay = <0x11>;
0218         status = "okay";
0219 
0220         mdio {
0221                 compatible = "snps,dwmac-mdio";
0222                 #address-cells = <1>;
0223                 #size-cells = <0>;
0224 
0225                 rtl8211e: ethernet-phy@1 {
0226                         reg = <1>;
0227                         interrupt-parent = <&gpio3>;
0228                         interrupts = <RK_PB2 IRQ_TYPE_LEVEL_LOW>;
0229                         reset-assert-us = <10000>;
0230                         reset-deassert-us = <30000>;
0231                         reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
0232                 };
0233         };
0234 };
0235 
0236 &gpu {
0237         mali-supply = <&vdd_gpu>;
0238         status = "okay";
0239 };
0240 
0241 &hdmi {
0242         ddc-i2c-bus = <&i2c3>;
0243         status = "okay";
0244 };
0245 
0246 &hdmi_sound {
0247         status = "okay";
0248 };
0249 
0250 &i2c0 {
0251         clock-frequency = <400000>;
0252         i2c-scl-rising-time-ns = <168>;
0253         i2c-scl-falling-time-ns = <4>;
0254         status = "okay";
0255 
0256         rk808: pmic@1b {
0257                 compatible = "rockchip,rk808";
0258                 reg = <0x1b>;
0259                 interrupt-parent = <&gpio1>;
0260                 interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
0261                 #clock-cells = <1>;
0262                 clock-output-names = "rtc_clko_soc", "rtc_clko_wifi";
0263                 pinctrl-names = "default";
0264                 pinctrl-0 = <&pmic_int_l>;
0265                 rockchip,system-power-controller;
0266                 wakeup-source;
0267 
0268                 vcc1-supply = <&vcc3v3_sys>;
0269                 vcc2-supply = <&vcc3v3_sys>;
0270                 vcc3-supply = <&vcc3v3_sys>;
0271                 vcc4-supply = <&vcc3v3_sys>;
0272                 vcc6-supply = <&vcc3v3_sys>;
0273                 vcc7-supply = <&vcc3v3_sys>;
0274                 vcc8-supply = <&vcc3v3_sys>;
0275                 vcc9-supply = <&vcc3v3_sys>;
0276                 vcc10-supply = <&vcc3v3_sys>;
0277                 vcc11-supply = <&vcc3v3_sys>;
0278                 vcc12-supply = <&vcc3v3_sys>;
0279                 vddio-supply = <&vcc_3v0>;
0280 
0281                 regulators {
0282                         vdd_center: DCDC_REG1 {
0283                                 regulator-name = "vdd_center";
0284                                 regulator-always-on;
0285                                 regulator-boot-on;
0286                                 regulator-min-microvolt = <700000>;
0287                                 regulator-max-microvolt = <1500000>;
0288                                 regulator-ramp-delay = <6001>;
0289                                 regulator-state-mem {
0290                                         regulator-off-in-suspend;
0291                                 };
0292                         };
0293 
0294                         vdd_cpu_l: DCDC_REG2 {
0295                                 regulator-name = "vdd_cpu_l";
0296                                 regulator-always-on;
0297                                 regulator-boot-on;
0298                                 regulator-min-microvolt = <700000>;
0299                                 regulator-max-microvolt = <1500000>;
0300                                 regulator-ramp-delay = <6001>;
0301                                 regulator-state-mem {
0302                                         regulator-off-in-suspend;
0303                                 };
0304                         };
0305 
0306                         vcc_ddr: DCDC_REG3 {
0307                                 regulator-name = "vcc_ddr";
0308                                 regulator-always-on;
0309                                 regulator-boot-on;
0310                                 regulator-state-mem {
0311                                         regulator-on-in-suspend;
0312                                 };
0313                         };
0314 
0315                         vcc_1v8: DCDC_REG4 {
0316                                 regulator-name = "vcc_1v8";
0317                                 regulator-always-on;
0318                                 regulator-boot-on;
0319                                 regulator-min-microvolt = <1800000>;
0320                                 regulator-max-microvolt = <3300000>;
0321                                 regulator-state-mem {
0322                                         regulator-on-in-suspend;
0323                                         regulator-suspend-microvolt = <1800000>;
0324                                 };
0325                         };
0326 
0327                         vcc1v8_dvp: LDO_REG1 {
0328                                 regulator-name = "vcc1v8_dvp";
0329                                 regulator-always-on;
0330                                 regulator-boot-on;
0331                                 regulator-min-microvolt = <1800000>;
0332                                 regulator-max-microvolt = <3400000>;
0333                                 regulator-state-mem {
0334                                         regulator-off-in-suspend;
0335                                 };
0336                         };
0337 
0338                         vcc3v0_tp: LDO_REG2 {
0339                                 regulator-name = "vcc3v0_tp";
0340                                 regulator-always-on;
0341                                 regulator-boot-on;
0342                                 regulator-min-microvolt = <1800000>;
0343                                 regulator-max-microvolt = <3400000>;
0344                                 regulator-state-mem {
0345                                         regulator-off-in-suspend;
0346                                 };
0347                         };
0348 
0349                         vcc1v8_pmupll: LDO_REG3 {
0350                                 regulator-name = "vcc1v8_pmupll";
0351                                 regulator-always-on;
0352                                 regulator-boot-on;
0353                                 regulator-min-microvolt = <800000>;
0354                                 regulator-max-microvolt = <2500000>;
0355                                 regulator-state-mem {
0356                                         regulator-on-in-suspend;
0357                                         regulator-suspend-microvolt = <1800000>;
0358                                 };
0359                         };
0360 
0361                         vcc_sdio: LDO_REG4 {
0362                                 regulator-name = "vcc_sdio";
0363                                 regulator-always-on;
0364                                 regulator-boot-on;
0365                                 regulator-min-microvolt = <1800000>;
0366                                 regulator-max-microvolt = <3400000>;
0367                                 regulator-state-mem {
0368                                         regulator-on-in-suspend;
0369                                         regulator-suspend-microvolt = <3000000>;
0370                                 };
0371                         };
0372 
0373                         vcca3v0_codec: LDO_REG5 {
0374                                 regulator-name = "vcca3v0_codec";
0375                                 regulator-always-on;
0376                                 regulator-boot-on;
0377                                 regulator-min-microvolt = <1800000>;
0378                                 regulator-max-microvolt = <3400000>;
0379                                 regulator-state-mem {
0380                                         regulator-off-in-suspend;
0381                                 };
0382                         };
0383 
0384                         vcc_1v5: LDO_REG6 {
0385                                 regulator-name = "vcc_1v5";
0386                                 regulator-always-on;
0387                                 regulator-boot-on;
0388                                 regulator-min-microvolt = <800000>;
0389                                 regulator-max-microvolt = <2500000>;
0390                                 regulator-state-mem {
0391                                         regulator-on-in-suspend;
0392                                         regulator-suspend-microvolt = <1500000>;
0393                                 };
0394                         };
0395 
0396                         vcca1v8_codec: LDO_REG7 {
0397                                 regulator-name = "vcca1v8_codec";
0398                                 regulator-always-on;
0399                                 regulator-boot-on;
0400                                 regulator-min-microvolt = <800000>;
0401                                 regulator-max-microvolt = <2500000>;
0402                                 regulator-state-mem {
0403                                         regulator-off-in-suspend;
0404                                 };
0405                         };
0406 
0407                         vcc_3v0: LDO_REG8 {
0408                                 regulator-name = "vcc_3v0";
0409                                 regulator-always-on;
0410                                 regulator-boot-on;
0411                                 regulator-min-microvolt = <1800000>;
0412                                 regulator-max-microvolt = <3400000>;
0413                                 regulator-state-mem {
0414                                         regulator-on-in-suspend;
0415                                         regulator-suspend-microvolt = <3000000>;
0416                                 };
0417                         };
0418 
0419                         vcc3v3_s3: SWITCH_REG1 {
0420                                 regulator-name = "vcc3v3_s3";
0421                                 regulator-always-on;
0422                                 regulator-boot-on;
0423                                 regulator-state-mem {
0424                                         regulator-off-in-suspend;
0425                                 };
0426                         };
0427 
0428                         vcc3v3_s0: SWITCH_REG2 {
0429                                 regulator-name = "vcc3v3_s0";
0430                                 regulator-always-on;
0431                                 regulator-boot-on;
0432                                 regulator-state-mem {
0433                                         regulator-off-in-suspend;
0434                                 };
0435                         };
0436                 };
0437         };
0438 
0439         vdd_cpu_b: regulator@40 {
0440                 compatible = "silergy,syr827";
0441                 reg = <0x40>;
0442                 fcs,suspend-voltage-selector = <1>;
0443                 pinctrl-names = "default";
0444                 pinctrl-0 = <&cpu_b_sleep>;
0445                 regulator-name = "vdd_cpu_b";
0446                 regulator-min-microvolt = <712500>;
0447                 regulator-max-microvolt = <1500000>;
0448                 regulator-ramp-delay = <1000>;
0449                 regulator-always-on;
0450                 regulator-boot-on;
0451                 vin-supply = <&vcc3v3_sys>;
0452 
0453                 regulator-state-mem {
0454                         regulator-off-in-suspend;
0455                 };
0456         };
0457 
0458         vdd_gpu: regulator@41 {
0459                 compatible = "silergy,syr828";
0460                 reg = <0x41>;
0461                 fcs,suspend-voltage-selector = <1>;
0462                 pinctrl-names = "default";
0463                 pinctrl-0 = <&gpu_sleep>;
0464                 regulator-name = "vdd_gpu";
0465                 regulator-min-microvolt = <712500>;
0466                 regulator-max-microvolt = <1500000>;
0467                 regulator-ramp-delay = <1000>;
0468                 regulator-always-on;
0469                 regulator-boot-on;
0470                 vin-supply = <&vcc3v3_sys>;
0471 
0472                 regulator-state-mem {
0473                         regulator-off-in-suspend;
0474                 };
0475         };
0476 };
0477 
0478 &i2c1 {
0479         i2c-scl-rising-time-ns = <450>;
0480         i2c-scl-falling-time-ns = <15>;
0481         status = "okay";
0482 };
0483 
0484 &i2c3 {
0485         i2c-scl-rising-time-ns = <450>;
0486         i2c-scl-falling-time-ns = <15>;
0487         status = "okay";
0488 };
0489 
0490 &i2c4 {
0491         clock-frequency = <400000>;
0492         i2c-scl-rising-time-ns = <450>;
0493         i2c-scl-falling-time-ns = <15>;
0494         status = "okay";
0495 
0496         ak09911@c {
0497                 compatible = "asahi-kasei,ak09911";
0498                 reg = <0x0c>;
0499                 vdd-supply = <&vcc3v3_s3>;
0500                 vid-supply = <&vcc3v3_s3>;
0501         };
0502 
0503         mpu6500@68 {
0504                 compatible = "invensense,mpu6500";
0505                 reg = <0x68>;
0506                 interrupt-parent = <&gpio1>;
0507                 interrupts = <RK_PC6 IRQ_TYPE_EDGE_RISING>;
0508                 pinctrl-names = "default";
0509                 pinctrl-0 = <&gsensor_int_l>;
0510                 vddio-supply = <&vcc3v3_s3>;
0511         };
0512 
0513         lsm6ds3@6a {
0514                 compatible = "st,lsm6ds3";
0515                 reg = <0x6a>;
0516                 interrupt-parent = <&gpio1>;
0517                 interrupts = <RK_PD0 IRQ_TYPE_EDGE_RISING>;
0518                 pinctrl-names = "default";
0519                 pinctrl-0 = <&gyr_int_l>;
0520                 vdd-supply = <&vcc3v3_s3>;
0521                 vddio-supply = <&vcc3v3_s3>;
0522         };
0523 
0524         cm32181@10 {
0525                 compatible = "capella,cm32181";
0526                 reg = <0x10>;
0527                 interrupt-parent = <&gpio4>;
0528                 interrupts = <RK_PD0 IRQ_TYPE_EDGE_RISING>;
0529                 pinctrl-names = "default";
0530                 pinctrl-0 = <&light_int_l>;
0531                 vdd-supply = <&vcc3v3_s3>;
0532         };
0533 
0534         fusb302@22 {
0535                 compatible = "fcs,fusb302";
0536                 reg = <0x22>;
0537                 interrupt-parent = <&gpio1>;
0538                 interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
0539                 pinctrl-names = "default";
0540                 pinctrl-0 = <&chg_cc_int_l>;
0541                 vbus-supply = <&vbus_typec>;
0542 
0543                 typec_con: connector {
0544                         compatible = "usb-c-connector";
0545                         data-role = "host";
0546                         label = "USB-C";
0547                         op-sink-microwatt = <1000000>;
0548                         power-role = "dual";
0549                         sink-pdos =
0550                                 <PDO_FIXED(5000, 2500, PDO_FIXED_USB_COMM)>;
0551                         source-pdos =
0552                                 <PDO_FIXED(5000, 1400, PDO_FIXED_USB_COMM)>;
0553                         try-power-role = "sink";
0554 
0555                         ports {
0556                                 #address-cells = <1>;
0557                                 #size-cells = <0>;
0558 
0559                                 port@0 {
0560                                         reg = <0>;
0561                                         typec_hs: endpoint {
0562                                                 remote-endpoint = <&u2phy0_typec_hs>;
0563                                         };
0564                                 };
0565                                 port@1 {
0566                                         reg = <1>;
0567                                         typec_ss: endpoint {
0568                                                 remote-endpoint = <&tcphy0_typec_ss>;
0569                                         };
0570                                 };
0571                                 port@2 {
0572                                         reg = <2>;
0573                                         typec_dp: endpoint {
0574                                                 remote-endpoint = <&tcphy0_typec_dp>;
0575                                         };
0576                                 };
0577                         };
0578                 };
0579         };
0580 };
0581 
0582 &io_domains {
0583         status = "okay";
0584         bt656-supply = <&vcc_3v0>;
0585         audio-supply = <&vcca1v8_codec>;
0586         sdmmc-supply = <&vcc_sdio>;
0587         gpio1830-supply = <&vcc_3v0>;
0588 };
0589 
0590 &pmu_io_domains {
0591         status = "okay";
0592         pmu1830-supply = <&vcc_3v0>;
0593 };
0594 
0595 &pinctrl {
0596         buttons {
0597                 pwr_btn: pwr-btn {
0598                         rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
0599                 };
0600         };
0601 
0602         gmac {
0603                 phy_intb: phy-intb {
0604                         rockchip,pins = <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
0605                 };
0606 
0607                 phy_rstb: phy-rstb {
0608                         rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
0609                 };
0610         };
0611 
0612         pmic {
0613                 cpu_b_sleep: cpu-b-sleep {
0614                         rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
0615                 };
0616 
0617                 gpu_sleep: gpu-sleep {
0618                         rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
0619                 };
0620 
0621                 pmic_int_l: pmic-int-l {
0622                         rockchip,pins =
0623                                 <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
0624                 };
0625         };
0626 
0627         sd {
0628                 sdmmc0_pwr_h: sdmmc0-pwr-h {
0629                         rockchip,pins =
0630                                 <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
0631                 };
0632         };
0633 
0634         usb2 {
0635                 vcc5v0_host_en: vcc5v0-host-en {
0636                         rockchip,pins =
0637                                 <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
0638                 };
0639 
0640                 vcc5v0_typec_en: vcc5v0-typec-en {
0641                         rockchip,pins =
0642                                 <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
0643                 };
0644         };
0645 
0646         sdio-pwrseq {
0647                 wifi_reg_on_h: wifi-reg-on-h {
0648                         rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
0649                 };
0650         };
0651 
0652         wifi {
0653                 wifi_host_wake_l: wifi-host-wake-l {
0654                         rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
0655                 };
0656         };
0657 
0658         bluetooth {
0659                 bt_reg_on_h: bt-enable-h {
0660                         rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
0661                 };
0662 
0663                 bt_host_wake_l: bt-host-wake-l {
0664                         rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
0665                 };
0666 
0667                 bt_wake_l: bt-wake-l {
0668                         rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
0669                 };
0670         };
0671 
0672         mpu6500 {
0673                 gsensor_int_l: gsensor-int-l {
0674                         rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
0675                 };
0676         };
0677 
0678         lsm6ds3 {
0679                 gyr_int_l: gyr-int-l {
0680                         rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
0681                 };
0682         };
0683 
0684         cm32181 {
0685                 light_int_l: light-int-l {
0686                         rockchip,pins = <4 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
0687                 };
0688         };
0689 
0690         fusb302 {
0691                 chg_cc_int_l: chg-cc-int-l {
0692                         rockchip,pins = <1 RK_PA2 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 &sdhci {
0711         bus-width = <8>;
0712         mmc-hs400-1_8v;
0713         mmc-hs400-enhanced-strobe;
0714         non-removable;
0715         status = "okay";
0716 };
0717 
0718 &sdio0 {
0719         bus-width = <4>;
0720         cap-sd-highspeed;
0721         cap-sdio-irq;
0722         clock-frequency = <50000000>;
0723         disable-wp;
0724         keep-power-in-suspend;
0725         max-frequency = <50000000>;
0726         mmc-pwrseq = <&sdio_pwrseq>;
0727         non-removable;
0728         pinctrl-names = "default";
0729         pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
0730         sd-uhs-sdr104;
0731         #address-cells = <1>;
0732         #size-cells = <0>;
0733         status = "okay";
0734 
0735         brcmf: wifi@1 {
0736                 reg = <1>;
0737                 compatible = "brcm,bcm4329-fmac";
0738                 interrupt-parent = <&gpio0>;
0739                 interrupts = <RK_PA3 IRQ_TYPE_LEVEL_HIGH>;
0740                 interrupt-names = "host-wake";
0741                 pinctrl-names = "default";
0742                 pinctrl-0 = <&wifi_host_wake_l>;
0743         };
0744 };
0745 
0746 &sdmmc {
0747         bus-width = <4>;
0748         cap-mmc-highspeed;
0749         cap-sd-highspeed;
0750         cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
0751         clock-frequency = <150000000>;
0752         disable-wp;
0753         max-frequency = <150000000>;
0754         pinctrl-names = "default";
0755         pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
0756         vmmc-supply = <&vcc3v0_sd>;
0757         vqmmc-supply = <&vcc_sdio>;
0758         status = "okay";
0759 };
0760 
0761 &tcphy0 {
0762         status = "okay";
0763 };
0764 
0765 &tcphy0_dp {
0766         port {
0767                 tcphy0_typec_dp: endpoint {
0768                         remote-endpoint = <&typec_dp>;
0769                 };
0770         };
0771 };
0772 
0773 &tcphy0_usb3 {
0774         port {
0775                 tcphy0_typec_ss: endpoint {
0776                         remote-endpoint = <&typec_ss>;
0777                 };
0778         };
0779 };
0780 
0781 &tcphy1 {
0782         status = "okay";
0783 };
0784 
0785 &tsadc {
0786         rockchip,hw-tshut-mode = <1>;
0787         rockchip,hw-tshut-polarity = <1>;
0788         status = "okay";
0789 };
0790 
0791 &u2phy0 {
0792         status = "okay";
0793 
0794         u2phy0_otg: otg-port {
0795                 phy-supply = <&vbus_typec>;
0796                 status = "okay";
0797         };
0798 
0799         u2phy0_host: host-port {
0800                 phy-supply = <&vcc5v0_host>;
0801                 status = "okay";
0802         };
0803 
0804         port {
0805                 u2phy0_typec_hs: endpoint {
0806                         remote-endpoint = <&typec_hs>;
0807                 };
0808         };
0809 };
0810 
0811 &u2phy1 {
0812         status = "okay";
0813 
0814         u2phy1_otg: otg-port {
0815                 status = "okay";
0816         };
0817 
0818         u2phy1_host: host-port {
0819                 phy-supply = <&vcc5v0_host>;
0820                 status = "okay";
0821         };
0822 };
0823 
0824 &uart0 {
0825         pinctrl-names = "default";
0826         pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
0827         status = "okay";
0828 
0829         bluetooth {
0830                 compatible = "brcm,bcm43438-bt";
0831                 clocks = <&rk808 1>;
0832                 clock-names = "lpo";
0833                 device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
0834                 host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
0835                 shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
0836                 pinctrl-names = "default";
0837                 pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_reg_on_h>;
0838                 vbat-supply = <&vcc3v3_sys>;
0839                 vddio-supply = <&vcc_1v8>;
0840         };
0841 };
0842 
0843 &uart2 {
0844         status = "okay";
0845 };
0846 
0847 &usb_host0_ehci {
0848         status = "okay";
0849 };
0850 
0851 &usb_host0_ohci {
0852         status = "okay";
0853 };
0854 
0855 &usb_host1_ehci {
0856         status = "okay";
0857 };
0858 
0859 &usb_host1_ohci {
0860         status = "okay";
0861 };
0862 
0863 &usbdrd3_0 {
0864         status = "okay";
0865 };
0866 
0867 &usbdrd_dwc3_0 {
0868         status = "okay";
0869         dr_mode = "host";
0870 };
0871 
0872 &usbdrd3_1 {
0873         status = "okay";
0874 };
0875 
0876 &usbdrd_dwc3_1 {
0877         status = "okay";
0878         dr_mode = "host";
0879 };
0880 
0881 &vopb {
0882         status = "okay";
0883 };
0884 
0885 &vopb_mmu {
0886         status = "okay";
0887 };
0888 
0889 &vopl {
0890         status = "okay";
0891 };
0892 
0893 &vopl_mmu {
0894         status = "okay";
0895 };