Back to home page

OSCL-LXR

 
 

    


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