]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
arm: dts: sync the Rockhip 3328 SoCs from Linux
authorPeter Robinson <pbrobinson@gmail.com>
Thu, 22 Jul 2021 15:20:43 +0000 (16:20 +0100)
committerKever Yang <kever.yang@rock-chips.com>
Thu, 12 Aug 2021 01:33:13 +0000 (09:33 +0800)
Sync the rk3328 DTs and associated bits from 5.14-rc1.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
arch/arm/dts/rk3328-evb.dts
arch/arm/dts/rk3328-nanopi-r2s-u-boot.dtsi
arch/arm/dts/rk3328-nanopi-r2s.dts
arch/arm/dts/rk3328-roc-cc-u-boot.dtsi
arch/arm/dts/rk3328-roc-cc.dts
arch/arm/dts/rk3328-rock-pi-e-u-boot.dtsi
arch/arm/dts/rk3328-rock-pi-e.dts
arch/arm/dts/rk3328-rock64-u-boot.dtsi
arch/arm/dts/rk3328-rock64.dts
arch/arm/dts/rk3328.dtsi

index 6abc6f4a86cfbf38bf2c7c9411a8a4fecb6426b1..ff6b466e0e07442b10ba97d9ba129f1cc36fbeb8 100644 (file)
        model = "Rockchip RK3328 EVB";
        compatible = "rockchip,rk3328-evb", "rockchip,rk3328";
 
+       aliases {
+               mmc0 = &sdmmc;
+               mmc1 = &sdio;
+               mmc2 = &emmc;
+       };
+
        chosen {
                stdout-path = "serial2:1500000n8";
        };
@@ -41,7 +47,7 @@
                compatible = "regulator-fixed";
                gpio = <&gpio0 30 GPIO_ACTIVE_LOW>;
                pinctrl-names = "default";
-               pinctrl-0 = <&sdmmc0m1_gpio>;
+               pinctrl-0 = <&sdmmc0m1_pin>;
                regulator-name = "vcc_sd";
                regulator-min-microvolt = <3300000>;
                regulator-max-microvolt = <3300000>;
        cpu-supply = <&vdd_arm>;
 };
 
+&cpu1 {
+       cpu-supply = <&vdd_arm>;
+};
+
+&cpu2 {
+       cpu-supply = <&vdd_arm>;
+};
+
+&cpu3 {
+       cpu-supply = <&vdd_arm>;
+};
+
 &emmc {
        bus-width = <8>;
        cap-mmc-highspeed;
 &gmac2phy {
        phy-supply = <&vcc_phy>;
        clock_in_out = "output";
-       assigned-clocks = <&cru SCLK_MAC2PHY_SRC>;
        assigned-clock-rate = <50000000>;
        assigned-clocks = <&cru SCLK_MAC2PHY>;
        assigned-clock-parents = <&cru SCLK_MAC2PHY_SRC>;
-
+       status = "okay";
 };
 
 &i2c1 {
index 9e2ced1541f02f4ba8c15b3fb0fcd0e1fefc089b..8db5e55af6134798321b2d6a13e091688f0a6cb2 100644 (file)
@@ -20,7 +20,7 @@
        u-boot,dm-spl;
 };
 
-&sdmmc0m1_gpio {
+&sdmmc0m1_pin {
        u-boot,dm-spl;
 };
 
index 5445c5cb3d68b36242a812bb582ab7624086c7d7..3857d487ab84cfcd7aadec403a259f8a266987eb 100644 (file)
        model = "FriendlyElec NanoPi R2S";
        compatible = "friendlyarm,nanopi-r2s", "rockchip,rk3328";
 
+       aliases {
+               ethernet1 = &rtl8153;
+               mmc0 = &sdmmc;
+       };
+
        chosen {
                stdout-path = "serial2:1500000n8";
        };
@@ -50,6 +55,7 @@
                sys_led: led-1 {
                        gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
                        label = "nanopi-r2s:red:sys";
+                       default-state = "on";
                };
 
                wan_led: led-2 {
                regulator-settling-time-us = <5000>;
                regulator-type = "voltage";
                startup-delay-us = <2000>;
-               states = <1800000 0x1
-                         3300000 0x0>;
+               states = <1800000 0x1>,
+                        <3300000 0x0>;
                vin-supply = <&vcc_io_33>;
        };
 
        vcc_sd: sdmmc-regulator {
                compatible = "regulator-fixed";
                gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
-               pinctrl-0 = <&sdmmc0m1_gpio>;
+               pinctrl-0 = <&sdmmc0m1_pin>;
                pinctrl-names = "default";
                regulator-name = "vcc_sd";
                regulator-boot-on;
                regulator-min-microvolt = <5000000>;
                regulator-max-microvolt = <5000000>;
        };
+
+       vdd_5v_lan: vdd-5v-lan {
+               compatible = "regulator-fixed";
+               enable-active-high;
+               gpio = <&gpio2 RK_PC6 GPIO_ACTIVE_HIGH>;
+               pinctrl-0 = <&lan_vdd_pin>;
+               pinctrl-names = "default";
+               regulator-name = "vdd_5v_lan";
+               regulator-always-on;
+               regulator-boot-on;
+               vin-supply = <&vdd_5v>;
+       };
 };
 
 &cpu0 {
        cpu-supply = <&vdd_arm>;
 };
 
+&display_subsystem {
+       status = "disabled";
+};
+
 &gmac2io {
        assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
        assigned-clock-parents = <&gmac_clk>, <&gmac_clk>;
                #size-cells = <0>;
 
                rtl8211e: ethernet-phy@1 {
-                       compatible = "ethernet-phy-id001c.c915",
-                                    "ethernet-phy-ieee802.3-c22";
                        reg = <1>;
                        pinctrl-0 = <&eth_phy_reset_pin>;
                        pinctrl-names = "default";
                };
        };
 
-       ethernet-phy {
+       gmac2io {
                eth_phy_reset_pin: eth-phy-reset-pin {
                        rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
                };
                };
        };
 
+       lan {
+               lan_vdd_pin: lan-vdd-pin {
+                       rockchip,pins = <2 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
+               };
+       };
+
        pmic {
                pmic_int_l: pmic-int-l {
                        rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_up>;
        dr_mode = "host";
 };
 
+&usbdrd3 {
+       dr_mode = "host";
+       status = "okay";
+       #address-cells = <1>;
+       #size-cells = <0>;
+
+       /* Second port is for USB 3.0 */
+       rtl8153: device@2 {
+               compatible = "usbbda,8153";
+               reg = <2>;
+       };
+};
+
 &usb_host0_ehci {
        status = "okay";
 };
index 08806dfc0f9f268f65b027e0a5b0598bf0a89483..20a62134a074480599614607e553734e80271692 100644 (file)
@@ -40,7 +40,7 @@
        u-boot,dm-spl;
 };
 
-&sdmmc0m1_gpio {
+&sdmmc0m1_pin {
        u-boot,dm-spl;
 };
 
index 8d553c92182a43432265cde14eb1c48acf3bd126..aa22a0c222655f0616a2142f9e1e8d25642ad1c2 100644 (file)
        model = "Firefly roc-rk3328-cc";
        compatible = "firefly,roc-rk3328-cc", "rockchip,rk3328";
 
+       aliases {
+               mmc0 = &sdmmc;
+               mmc1 = &emmc;
+       };
+
        chosen {
                stdout-path = "serial2:1500000n8";
        };
@@ -34,7 +39,7 @@
                compatible = "regulator-fixed";
                gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
                pinctrl-names = "default";
-               pinctrl-0 = <&sdmmc0m1_gpio>;
+               pinctrl-0 = <&sdmmc0m1_pin>;
                regulator-boot-on;
                regulator-name = "vcc_sd";
                regulator-min-microvolt = <3300000>;
@@ -45,8 +50,8 @@
        vcc_sdio: sdmmcio-regulator {
                compatible = "regulator-gpio";
                gpios = <&grf_gpio 0 GPIO_ACTIVE_HIGH>;
-               states = <1800000 0x1
-                         3300000 0x0>;
+               states = <1800000 0x1>,
+                        <3300000 0x0>;
                regulator-name = "vcc_sdio";
                regulator-type = "voltage";
                regulator-min-microvolt = <1800000>;
@@ -86,7 +91,7 @@
        leds {
                compatible = "gpio-leds";
 
-               power {
+               power_led: led-0 {
                        label = "firefly:blue:power";
                        linux,default-trigger = "heartbeat";
                        gpios = <&rk805 1 GPIO_ACTIVE_LOW>;
@@ -94,7 +99,7 @@
                        mode = <0x23>;
                };
 
-               user {
+               user_led: led-1 {
                        label = "firefly:yellow:user";
                        linux,default-trigger = "mmc1";
                        gpios = <&rk805 0 GPIO_ACTIVE_LOW>;
        };
 };
 
+&analog_sound {
+       status = "okay";
+};
+
+&codec {
+       status = "okay";
+};
+
 &cpu0 {
        cpu-supply = <&vdd_arm>;
 };
        status = "okay";
 };
 
+&hdmi_sound {
+       status = "okay";
+};
+
 &i2c1 {
        status = "okay";
 
        };
 };
 
+&i2s0 {
+       status = "okay";
+};
+
+&i2s1 {
+       status = "okay";
+};
+
 &io_domains {
        status = "okay";
 
 };
 
 &usb20_otg {
+       dr_mode = "host";
+       status = "okay";
+};
+
+&usbdrd3 {
+       dr_mode = "host";
        status = "okay";
 };
 
index 4fc055eacb7346de846568c941dd0406e5be8ef6..9d557eb988a0298a8a591d94974d394a47625cbb 100644 (file)
@@ -37,7 +37,7 @@
        u-boot,dm-spl;
 };
 
-&sdmmc0m1_gpio {
+&sdmmc0m1_pin {
        u-boot,dm-spl;
 };
 
@@ -46,7 +46,7 @@
 };
 
 &usb_host0_xhci {
-       vbus-supply = <&vcc5v0_host_xhci>;
+       vbus-supply = <&vcc_host_5v>;
        status = "okay";
 };
 
index 4b9f9a8248071ea0d14af90182282ccf91bd916d..018a3a5075c72ed013ea33b7a7a8b16a24675a40 100644 (file)
-// SPDX-License-Identifier: GPL-2.0+
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
 /*
- * (C) Copyright 2020 Radxa
+ * (C) Copyright 2020 Chen-Yu Tsai <wens@csie.org>
+ *
+ * Based on ./rk3328-rock64.dts, which is
+ *
+ * Copyright (c) 2017 PINE64
  */
 
 /dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+#include <dt-bindings/pinctrl/rockchip.h>
+
 #include "rk3328.dtsi"
 
 / {
-       model = "Radxa Rockpi E";
-       compatible = "radxa,rock-pi-e", "rockchip,rk3328";
+       model = "Radxa ROCK Pi E";
+       compatible = "radxa,rockpi-e", "rockchip,rk3328";
+
+       aliases {
+               mmc0 = &sdmmc;
+               mmc1 = &emmc;
+       };
 
        chosen {
-       stdout-path = "serial2:1500000n8";
+               stdout-path = "serial2:1500000n8";
+       };
+
+       adc-keys {
+               compatible = "adc-keys";
+               io-channels = <&saradc 0>;
+               io-channel-names = "buttons";
+               keyup-threshold-microvolt = <1750000>;
+
+               /* This button is unpopulated out of the factory. */
+               button-recovery {
+                       label = "Recovery";
+                       linux,code = <KEY_VENDOR>;
+                       press-threshold-microvolt = <10000>;
+               };
        };
 
        gmac_clkin: external-gmac-clock {
-       compatible = "fixed-clock";
-       clock-frequency = <125000000>;
-       clock-output-names = "gmac_clkin";
-       #clock-cells = <0>;
+               compatible = "fixed-clock";
+               clock-frequency = <125000000>;
+               clock-output-names = "gmac_clkin";
+               #clock-cells = <0>;
+       };
+
+       leds {
+               compatible = "gpio-leds";
+               pinctrl-0 = <&led_pin>;
+               pinctrl-names = "default";
+
+               led-0 {
+                       color = <LED_COLOR_ID_BLUE>;
+                       gpios = <&gpio3 RK_PA5 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "heartbeat";
+               };
        };
 
        vcc_sd: sdmmc-regulator {
-       compatible = "regulator-fixed";
-       gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
-       pinctrl-names = "default";
-       pinctrl-0 = <&sdmmc0m1_gpio>;
-       regulator-name = "vcc_sd";
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-min-microvolt = <3300000>;
-       regulator-max-microvolt = <3300000>;
-       vin-supply = <&vcc_io>;
+               compatible = "regulator-fixed";
+               gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&sdmmc0m1_pin>;
+               regulator-name = "vcc_sd";
+               regulator-boot-on;
+               vin-supply = <&vcc_io>;
        };
 
-       vcc5v0_host_xhci: vcc5v0-host-xhci-drv {
-       compatible = "regulator-fixed";
-       enable-active-high;
-       regulator-name = "vcc5v0_host_xhci";
-       gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_HIGH>;
-       regulator-min-microvolt = <5000000>;
-       regulator-max-microvolt = <5000000>;
+       vcc_host_5v: vcc-host-5v-regulator {
+               compatible = "regulator-fixed";
+               gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_HIGH>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&usb30_host_drv>;
+               enable-active-high;
+               regulator-name = "vcc_host_5v";
+               regulator-always-on;
+               regulator-boot-on;
+               vin-supply = <&vcc_sys>;
        };
 
        vcc_sys: vcc-sys {
-       compatible = "regulator-fixed";
-       regulator-name = "vcc_sys";
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-min-microvolt = <5000000>;
-       regulator-max-microvolt = <5000000>;
+               compatible = "regulator-fixed";
+               regulator-name = "vcc_sys";
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+       };
+
+       vcc_wifi: vcc-wifi-regulator {
+               compatible = "regulator-fixed";
+               gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_LOW>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&wifi_en>;
+               regulator-name = "vcc_wifi";
+               regulator-always-on;
+               regulator-boot-on;
+               vin-supply = <&vcc_io>;
        };
 };
 
+&analog_sound {
+       status = "okay";
+};
+
+&codec {
+       status = "okay";
+};
+
 &cpu0 {
        cpu-supply = <&vdd_arm>;
 };
 &emmc {
        bus-width = <8>;
        cap-mmc-highspeed;
+       mmc-ddr-1_8v;
        mmc-hs200-1_8v;
-       supports-emmc;
-       disable-wp;
        non-removable;
-       num-slots = <1>;
        pinctrl-names = "default";
-       pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
+       pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_bus8>;
        vmmc-supply = <&vcc_io>;
        vqmmc-supply = <&vcc18_emmc>;
        status = "okay";
        assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
        assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
        clock_in_out = "input";
-       phy-supply = <&vcc_io>;
+       phy-handle = <&rtl8211e>;
        phy-mode = "rgmii";
+       phy-supply = <&vcc_io>;
        pinctrl-names = "default";
        pinctrl-0 = <&rgmiim1_pins>;
-       snps,force_thresh_dma_mode;
-       snps,reset-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
-       snps,reset-active-low;
-       snps,reset-delays-us = <0 10000 50000>;
+       snps,aal;
+       snps,rxpbl = <0x4>;
+       snps,txpbl = <0x4>;
        tx_delay = <0x26>;
        rx_delay = <0x11>;
        status = "okay";
+
+       mdio {
+               compatible = "snps,dwmac-mdio";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               rtl8211e: ethernet-phy@1 {
+                       reg = <1>;
+                       pinctrl-0 = <&eth_phy_int_pin>, <&eth_phy_reset_pin>;
+                       pinctrl-names = "default";
+                       interrupt-parent = <&gpio1>;
+                       interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
+                       reset-assert-us = <10000>;
+                       reset-deassert-us = <50000>;
+                       reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
+               };
+       };
 };
 
-&i2c1 {
+&gmac2phy {
        status = "okay";
+};
 
-       rk805: rk805@18 {
-       compatible = "rockchip,rk805";
+&i2c1 {
        status = "okay";
-       reg = <0x18>;
-       interrupt-parent = <&gpio2>;
-       interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
-       #clock-cells = <1>;
-       clock-output-names = "xin32k", "rk805-clkout2";
-       pinctrl-names = "default";
-       pinctrl-0 = <&pmic_int_l>;
-       rockchip,system-power-controller;
-       wakeup-source;
-
-       vcc1-supply = <&vcc_sys>;
-       vcc2-supply = <&vcc_sys>;
-       vcc3-supply = <&vcc_sys>;
-       vcc4-supply = <&vcc_sys>;
-       vcc5-supply = <&vcc_io>;
-       vcc6-supply = <&vcc_sys>;
-
-       regulators {
-       vdd_logic: DCDC_REG1 {
-       regulator-name = "vdd_logic";
-       regulator-min-microvolt = <712500>;
-       regulator-max-microvolt = <1450000>;
-       regulator-ramp-delay = <12500>;
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-state-mem {
-       regulator-on-in-suspend;
-       regulator-suspend-microvolt = <1000000>;
-       };
-       };
-
-       vdd_arm: DCDC_REG2 {
-       regulator-name = "vdd_arm";
-       regulator-min-microvolt = <712500>;
-       regulator-max-microvolt = <1450000>;
-       regulator-ramp-delay = <12500>;
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-state-mem {
-       regulator-on-in-suspend;
-       regulator-suspend-microvolt = <950000>;
-       };
-       };
 
-       vcc_ddr: DCDC_REG3 {
-       regulator-name = "vcc_ddr";
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-state-mem {
-       regulator-on-in-suspend;
-       };
-       };
-
-       vcc_io: DCDC_REG4 {
-       regulator-name = "vcc_io";
-       regulator-min-microvolt = <3300000>;
-       regulator-max-microvolt = <3300000>;
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-state-mem {
-       regulator-on-in-suspend;
-       regulator-suspend-microvolt = <3300000>;
-       };
-       };
-
-       vcc_18: LDO_REG1 {
-       regulator-name = "vcc_18";
-       regulator-min-microvolt = <1800000>;
-       regulator-max-microvolt = <1800000>;
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-state-mem {
-       regulator-on-in-suspend;
-       regulator-suspend-microvolt = <1800000>;
-       };
-       };
-
-       vcc18_emmc: LDO_REG2 {
-       regulator-name = "vcc18_emmc";
-       regulator-min-microvolt = <1800000>;
-       regulator-max-microvolt = <1800000>;
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-state-mem {
-       regulator-on-in-suspend;
-       regulator-suspend-microvolt = <1800000>;
-       };
-       };
-
-       vdd_10: LDO_REG3 {
-       regulator-name = "vdd_10";
-       regulator-min-microvolt = <1000000>;
-       regulator-max-microvolt = <1000000>;
-       regulator-always-on;
-       regulator-boot-on;
-       regulator-state-mem {
-       regulator-on-in-suspend;
-       regulator-suspend-microvolt = <1000000>;
-       };
-       };
-       };
+       rk805: pmic@18 {
+               compatible = "rockchip,rk805";
+               reg = <0x18>;
+               interrupt-parent = <&gpio2>;
+               interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
+               #clock-cells = <1>;
+               clock-output-names = "xin32k", "rk805-clkout2";
+               gpio-controller;
+               #gpio-cells = <2>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pmic_int_l>;
+               rockchip,system-power-controller;
+               wakeup-source;
+
+               vcc1-supply = <&vcc_sys>;
+               vcc2-supply = <&vcc_sys>;
+               vcc3-supply = <&vcc_sys>;
+               vcc4-supply = <&vcc_sys>;
+               vcc5-supply = <&vcc_io>;
+               vcc6-supply = <&vcc_sys>;
+
+               regulators {
+                       vdd_log: DCDC_REG1 {
+                               regulator-name = "vdd_log";
+                               regulator-always-on;
+                               regulator-boot-on;
+                               regulator-min-microvolt = <712500>;
+                               regulator-max-microvolt = <1450000>;
+                               regulator-ramp-delay = <12500>;
+
+                               regulator-state-mem {
+                                       regulator-on-in-suspend;
+                                       regulator-suspend-microvolt = <1000000>;
+                               };
+                       };
+
+                       vdd_arm: DCDC_REG2 {
+                               regulator-name = "vdd_arm";
+                               regulator-always-on;
+                               regulator-boot-on;
+                               regulator-min-microvolt = <712500>;
+                               regulator-max-microvolt = <1450000>;
+                               regulator-ramp-delay = <12500>;
+
+                               regulator-state-mem {
+                                       regulator-on-in-suspend;
+                                       regulator-suspend-microvolt = <950000>;
+                               };
+                       };
+
+                       vcc_ddr: DCDC_REG3 {
+                               regulator-name = "vcc_ddr";
+                               regulator-always-on;
+                               regulator-boot-on;
+
+                               regulator-state-mem {
+                                       regulator-on-in-suspend;
+                               };
+                       };
+
+                       vcc_io: DCDC_REG4 {
+                               regulator-name = "vcc_io";
+                               regulator-always-on;
+                               regulator-boot-on;
+                               regulator-min-microvolt = <3300000>;
+                               regulator-max-microvolt = <3300000>;
+
+                               regulator-state-mem {
+                                       regulator-on-in-suspend;
+                                       regulator-suspend-microvolt = <3300000>;
+                               };
+                       };
+
+                       vcc_18: LDO_REG1 {
+                               regulator-name = "vcc_18";
+                               regulator-always-on;
+                               regulator-boot-on;
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+
+                               regulator-state-mem {
+                                       regulator-on-in-suspend;
+                                       regulator-suspend-microvolt = <1800000>;
+                               };
+                       };
+
+                       vcc18_emmc: LDO_REG2 {
+                               regulator-name = "vcc18_emmc";
+                               regulator-always-on;
+                               regulator-boot-on;
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <1800000>;
+
+                               regulator-state-mem {
+                                       regulator-on-in-suspend;
+                                       regulator-suspend-microvolt = <1800000>;
+                               };
+                       };
+
+                       vdd_10: LDO_REG3 {
+                               regulator-name = "vdd_10";
+                               regulator-always-on;
+                               regulator-boot-on;
+                               regulator-min-microvolt = <1000000>;
+                               regulator-max-microvolt = <1000000>;
+
+                               regulator-state-mem {
+                                       regulator-on-in-suspend;
+                                       regulator-suspend-microvolt = <1000000>;
+                               };
+                       };
+               };
        };
 };
 
-&io_domains {
+&i2s1 {
        status = "okay";
+};
 
+&io_domains {
+       pmuio-supply = <&vcc_io>;
        vccio1-supply = <&vcc_io>;
        vccio2-supply = <&vcc18_emmc>;
        vccio3-supply = <&vcc_io>;
        vccio4-supply = <&vcc_io>;
        vccio5-supply = <&vcc_io>;
        vccio6-supply = <&vcc_io>;
-       pmuio-supply = <&vcc_io>;
+       status = "okay";
 };
 
 &pinctrl {
+       ephy {
+               eth_phy_int_pin: eth-phy-int-pin {
+                       rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_down>;
+               };
+
+               eth_phy_reset_pin: eth-phy-reset-pin {
+                       rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
+               };
+       };
+
+       leds {
+               led_pin: led-pin {
+                       rockchip,pins = <3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
+               };
+       };
+
        pmic {
-       pmic_int_l: pmic-int-l {
-       rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
+               pmic_int_l: pmic-int-l {
+                       rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
+               };
        };
+
+       usb3 {
+               usb30_host_drv: usb30-host-drv {
+                       rockchip,pins = <3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>;
+               };
+       };
+
+       wifi {
+               wifi_en: wifi-en {
+                       rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
+               };
        };
 };
 
 &sdmmc {
        bus-width = <4>;
-       cap-mmc-highspeed;
        cap-sd-highspeed;
-       card-detect-delay = <200>;
        disable-wp;
-       max-frequency = <150000000>;
-       num-slots = <1>;
        pinctrl-names = "default";
-       pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
-       supports-sd;
+       pinctrl-0 = <&sdmmc0_clk>, <&sdmmc0_cmd>, <&sdmmc0_dectn>, <&sdmmc0_bus4>;
        vmmc-supply = <&vcc_sd>;
        status = "okay";
 };
 
 &saradc {
+       vref-supply = <&vcc_18>;
        status = "okay";
 };
 
-&uart2 {
+&tsadc {
        status = "okay";
 };
 
-&usb20_otg {
+&u2phy {
        status = "okay";
 };
 
-&usb_host0_ehci {
+&u2phy_host {
        status = "okay";
 };
 
-&usb_host0_ohci {
+&uart2 {
+       status = "okay";
+};
+
+&usbdrd3 {
+       dr_mode = "host";
+       status = "okay";
+};
+
+&usb_host0_ehci {
        status = "okay";
 };
index 2af32aea05a241e82ccfb33bbcbf14428cee89f5..3c3b1370e3124734f48226685d5290142cc78ef7 100644 (file)
@@ -40,7 +40,7 @@
        u-boot,dm-spl;
 };
 
-&sdmmc0m1_gpio {
+&sdmmc0m1_pin {
        u-boot,dm-spl;
 };
 
index ebf3eb222e1fc73a8fead2caf5aba55be2486cb7..1b0f7e4551ea49f13512b136ec925cab8019b586 100644 (file)
        model = "Pine64 Rock64";
        compatible = "pine64,rock64", "rockchip,rk3328";
 
+       aliases {
+               mmc0 = &sdmmc;
+               mmc1 = &emmc;
+       };
+
        chosen {
                stdout-path = "serial2:1500000n8";
        };
@@ -25,7 +30,7 @@
                compatible = "regulator-fixed";
                gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
                pinctrl-names = "default";
-               pinctrl-0 = <&sdmmc0m1_gpio>;
+               pinctrl-0 = <&sdmmc0m1_pin>;
                regulator-name = "vcc_sd";
                regulator-min-microvolt = <3300000>;
                regulator-max-microvolt = <3300000>;
        leds {
                compatible = "gpio-leds";
 
-               power {
+               power_led: led-0 {
                        gpios = <&rk805 1 GPIO_ACTIVE_LOW>;
                        linux,default-trigger = "mmc0";
                };
 
-               standby {
+               standby_led: led-1 {
                        gpios = <&rk805 0 GPIO_ACTIVE_LOW>;
                        linux,default-trigger = "heartbeat";
                };
        };
 
-       sound {
-               compatible = "audio-graph-card";
-               label = "rockchip,rk3328";
-               dais = <&i2s1_p0
-                       &spdif_p0>;
+       spdif_sound: spdif-sound {
+               compatible = "simple-audio-card";
+               simple-audio-card,name = "SPDIF";
+
+               simple-audio-card,cpu {
+                       sound-dai = <&spdif>;
+               };
+
+               simple-audio-card,codec {
+                       sound-dai = <&spdif_dit>;
+               };
        };
 
-       spdif-dit {
+       spdif_dit: spdif-dit {
                compatible = "linux,spdif-dit";
                #sound-dai-cells = <0>;
-
-               port {
-                       dit_p0_0: endpoint {
-                               remote-endpoint = <&spdif_p0_0>;
-                       };
-               };
        };
 };
 
+&analog_sound {
+       status = "okay";
+};
+
 &codec {
        mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
        status = "okay";
-
-       port@0 {
-               codec_p0_0: endpoint {
-                       remote-endpoint = <&i2s1_p0_0>;
-               };
-       };
 };
 
 &cpu0 {
        status = "okay";
 };
 
+&hdmi_sound {
+       status = "okay";
+};
+
 &hdmiphy {
        status = "okay";
 };
        };
 };
 
-&i2s1 {
+&i2s0 {
        status = "okay";
+};
 
-       i2s1_p0: port {
-               i2s1_p0_0: endpoint {
-                       dai-format = "i2s";
-                       mclk-fs = <256>;
-                       remote-endpoint = <&codec_p0_0>;
-               };
-       };
+&i2s1 {
+       status = "okay";
 };
 
 &io_domains {
 &spdif {
        pinctrl-0 = <&spdifm0_tx>;
        status = "okay";
-
-       spdif_p0: port {
-               spdif_p0_0: endpoint {
-                       remote-endpoint = <&dit_p0_0>;
-               };
-       };
 };
 
 &spi0 {
        status = "okay";
 };
 
+&usbdrd3 {
+       dr_mode = "host";
+       status = "okay";
+};
+
 &usb_host0_ehci {
        status = "okay";
 };
index 945387e579f0e4dca9fe7e7a2551bb850b5a40b1..27e45d5886aab9c89d850c957838967d2fc4d104 100644 (file)
                };
        };
 
-       amba: bus {
-               compatible = "simple-bus";
-               #address-cells = <2>;
-               #size-cells = <2>;
-               ranges;
-
-               dmac: dmac@ff1f0000 {
-                       compatible = "arm,pl330", "arm,primecell";
-                       reg = <0x0 0xff1f0000 0x0 0x4000>;
-                       interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
-                                    <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
-                       clocks = <&cru ACLK_DMAC>;
-                       clock-names = "apb_pclk";
-                       #dma-cells = <1>;
-               };
-       };
-
        analog_sound: analog-sound {
                compatible = "simple-audio-card";
                simple-audio-card,format = "i2s";
                        status = "disabled";
                };
 
-               grf_gpio: grf-gpio {
+               grf_gpio: gpio {
                        compatible = "rockchip,rk3328-grf-gpio";
                        gpio-controller;
                        #gpio-cells = <2>;
                        #address-cells = <1>;
                        #size-cells = <0>;
 
-                       pd_hevc@RK3328_PD_HEVC {
+                       power-domain@RK3328_PD_HEVC {
                                reg = <RK3328_PD_HEVC>;
+                               #power-domain-cells = <0>;
                        };
-                       pd_video@RK3328_PD_VIDEO {
+                       power-domain@RK3328_PD_VIDEO {
                                reg = <RK3328_PD_VIDEO>;
+                               #power-domain-cells = <0>;
                        };
-                       pd_vpu@RK3328_PD_VPU {
+                       power-domain@RK3328_PD_VPU {
                                reg = <RK3328_PD_VPU>;
                                clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
+                               #power-domain-cells = <0>;
                        };
                };
 
        };
 
        wdt: watchdog@ff1a0000 {
-               compatible = "snps,dw-wdt";
+               compatible = "rockchip,rk3328-wdt", "snps,dw-wdt";
                reg = <0x0 0xff1a0000 0x0 0x100>;
                interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
                clocks = <&cru PCLK_WDT>;
                status = "disabled";
        };
 
+       dmac: dmac@ff1f0000 {
+               compatible = "arm,pl330", "arm,primecell";
+               reg = <0x0 0xff1f0000 0x0 0x4000>;
+               interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
+                            <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
+               arm,pl330-periph-burst;
+               clocks = <&cru ACLK_DMAC>;
+               clock-names = "apb_pclk";
+               #dma-cells = <1>;
+       };
+
        thermal-zones {
                soc_thermal: soc-thermal {
                        polling-delay-passive = <20>;
                clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
                clock-names = "tsadc", "apb_pclk";
                pinctrl-names = "init", "default", "sleep";
-               pinctrl-0 = <&otp_gpio>;
+               pinctrl-0 = <&otp_pin>;
                pinctrl-1 = <&otp_out>;
-               pinctrl-2 = <&otp_gpio>;
+               pinctrl-2 = <&otp_pin>;
                resets = <&cru SRST_TSADC>;
                reset-names = "tsadc-apb";
                rockchip,grf = <&grf>;
                #address-cells = <1>;
                #size-cells = <1>;
 
-               u2phy: usb2-phy@100 {
+               u2phy: usb2phy@100 {
                        compatible = "rockchip,rk3328-usb2phy";
                        reg = <0x100 0x10>;
                        clocks = <&xin24m>;
                              "mac_clk_tx", "clk_mac_ref",
                              "aclk_mac", "pclk_mac",
                              "clk_macphy";
-               resets = <&cru SRST_GMAC2PHY_A>, <&cru SRST_MACPHY>;
-               reset-names = "stmmaceth", "mac-phy";
+               resets = <&cru SRST_GMAC2PHY_A>;
+               reset-names = "stmmaceth";
                phy-mode = "rmii";
                phy-handle = <&phy>;
                snps,txpbl = <0x4>;
+               clock_in_out = "output";
                status = "disabled";
 
                mdio {
                        #address-cells = <1>;
                        #size-cells = <0>;
 
-                       phy: phy@0 {
+                       phy: ethernet-phy@0 {
                                compatible = "ethernet-phy-id1234.d400", "ethernet-phy-ieee802.3-c22";
                                reg = <0>;
                                clocks = <&cru SCLK_MAC2PHY_OUT>;
                status = "disabled";
        };
 
+       usbdrd3: usb@ff600000 {
+               compatible = "rockchip,rk3328-dwc3", "snps,dwc3";
+               reg = <0x0 0xff600000 0x0 0x100000>;
+               interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
+               clocks = <&cru SCLK_USB3OTG_REF>, <&cru SCLK_USB3OTG_SUSPEND>,
+                        <&cru ACLK_USB3OTG>;
+               clock-names = "ref_clk", "suspend_clk",
+                             "bus_clk";
+               dr_mode = "otg";
+               phy_type = "utmi_wide";
+               snps,dis-del-phy-power-chg-quirk;
+               snps,dis_enblslpm_quirk;
+               snps,dis-tx-ipgap-linecheck-quirk;
+               snps,dis-u2-freeclk-exists-quirk;
+               snps,dis_u2_susphy_quirk;
+               snps,dis_u3_susphy_quirk;
+               status = "disabled";
+       };
+
        /*
         * U-boot Specific Change
         *
                                rockchip,pins = <0 RK_PA5 2 &pcfg_pull_none>,
                                                <0 RK_PA6 2 &pcfg_pull_none>;
                        };
-                       i2c3_gpio: i2c3-gpio {
+                       i2c3_pins: i2c3-pins {
                                rockchip,pins =
                                        <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>,
                                        <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
                };
 
                tsadc {
-                       otp_gpio: otp-gpio {
+                       otp_pin: otp-pin {
                                rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
                        };
 
 
                uart0 {
                        uart0_xfer: uart0-xfer {
-                               rockchip,pins = <1 RK_PB1 1 &pcfg_pull_up>,
-                                               <1 RK_PB0 1 &pcfg_pull_none>;
+                               rockchip,pins = <1 RK_PB1 1 &pcfg_pull_none>,
+                                               <1 RK_PB0 1 &pcfg_pull_up>;
                        };
 
                        uart0_cts: uart0-cts {
                                rockchip,pins = <1 RK_PB2 1 &pcfg_pull_none>;
                        };
 
-                       uart0_rts_gpio: uart0-rts-gpio {
+                       uart0_rts_pin: uart0-rts-pin {
                                rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
                        };
                };
 
                uart1 {
                        uart1_xfer: uart1-xfer {
-                               rockchip,pins = <3 RK_PA4 4 &pcfg_pull_up>,
-                                               <3 RK_PA6 4 &pcfg_pull_none>;
+                               rockchip,pins = <3 RK_PA4 4 &pcfg_pull_none>,
+                                               <3 RK_PA6 4 &pcfg_pull_up>;
                        };
 
                        uart1_cts: uart1-cts {
                                rockchip,pins = <3 RK_PA5 4 &pcfg_pull_none>;
                        };
 
-                       uart1_rts_gpio: uart1-rts-gpio {
+                       uart1_rts_pin: uart1-rts-pin {
                                rockchip,pins = <3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
                        };
                };
 
                uart2-0 {
                        uart2m0_xfer: uart2m0-xfer {
-                               rockchip,pins = <1 RK_PA0 2 &pcfg_pull_up>,
-                                               <1 RK_PA1 2 &pcfg_pull_none>;
+                               rockchip,pins = <1 RK_PA0 2 &pcfg_pull_none>,
+                                               <1 RK_PA1 2 &pcfg_pull_up>;
                        };
                };
 
                uart2-1 {
                        uart2m1_xfer: uart2m1-xfer {
-                               rockchip,pins = <2 RK_PA0 1 &pcfg_pull_up>,
-                                               <2 RK_PA1 1 &pcfg_pull_none>;
+                               rockchip,pins = <2 RK_PA0 1 &pcfg_pull_none>,
+                                               <2 RK_PA1 1 &pcfg_pull_up>;
                        };
                };
 
                                rockchip,pins = <2 RK_PA7 1 &pcfg_pull_up_4ma>;
                        };
 
-                       sdmmc0m0_gpio: sdmmc0m0-gpio {
+                       sdmmc0m0_pin: sdmmc0m0-pin {
                                rockchip,pins = <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up_4ma>;
                        };
                };
                                rockchip,pins = <0 RK_PD6 3 &pcfg_pull_up_4ma>;
                        };
 
-                       sdmmc0m1_gpio: sdmmc0m1-gpio {
+                       sdmmc0m1_pin: sdmmc0m1-pin {
                                rockchip,pins = <0 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up_4ma>;
                        };
                };
                                                <1 RK_PA3 1 &pcfg_pull_up_8ma>;
                        };
 
-                       sdmmc0_gpio: sdmmc0-gpio {
+                       sdmmc0_pins: sdmmc0-pins {
                                rockchip,pins =
                                        <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
                                        <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
                                        <3 RK_PA7 3 &pcfg_pull_up_4ma>;
                        };
 
-                       sdmmc0ext_gpio: sdmmc0ext-gpio {
+                       sdmmc0ext_pins: sdmmc0ext-pins {
                                rockchip,pins =
                                        <3 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
                                        <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
                                                <1 RK_PC1 1 &pcfg_pull_up_8ma>;
                        };
 
-                       sdmmc1_gpio: sdmmc1-gpio {
+                       sdmmc1_pins: sdmmc1-pins {
                                rockchip,pins =
                                        <1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
                                        <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
                        tsadc_int: tsadc-int {
                                rockchip,pins = <2 RK_PB5 2 &pcfg_pull_none>;
                        };
-                       tsadc_gpio: tsadc-gpio {
+                       tsadc_pin: tsadc-pin {
                                rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
                        };
                };