summaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/dts
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ramips/dts')
-rw-r--r--target/linux/ramips/dts/3G-6200N.dts110
-rw-r--r--target/linux/ramips/dts/3G-6200NL.dts97
-rw-r--r--target/linux/ramips/dts/3G300M.dts118
-rw-r--r--target/linux/ramips/dts/AIR3GII.dts92
-rw-r--r--target/linux/ramips/dts/ALL0239-3G.dts114
-rw-r--r--target/linux/ramips/dts/ALL0256N-4M.dts96
-rw-r--r--target/linux/ramips/dts/ALL0256N-8M.dts96
-rw-r--r--target/linux/ramips/dts/ALL5002.dts108
-rw-r--r--target/linux/ramips/dts/ALL5003.dts108
-rw-r--r--target/linux/ramips/dts/ARGUS_ATP52B.dts98
-rw-r--r--target/linux/ramips/dts/ASL26555-16M.dts138
-rw-r--r--target/linux/ramips/dts/ASL26555-8M.dts133
-rw-r--r--target/linux/ramips/dts/BC2.dts92
-rw-r--r--target/linux/ramips/dts/BR-6425.dts73
-rw-r--r--target/linux/ramips/dts/BROADWAY.dts95
-rw-r--r--target/linux/ramips/dts/CARAMBOLA.dts83
-rw-r--r--target/linux/ramips/dts/D105.dts96
-rw-r--r--target/linux/ramips/dts/DAP-1350.dts124
-rw-r--r--target/linux/ramips/dts/DIR-300-B1.dts108
-rw-r--r--target/linux/ramips/dts/DIR-600-B1.dts107
-rw-r--r--target/linux/ramips/dts/DIR-600-B2.dts107
-rw-r--r--target/linux/ramips/dts/DIR-615-D.dts108
-rw-r--r--target/linux/ramips/dts/DIR-615-H1.dts109
-rw-r--r--target/linux/ramips/dts/DIR-620-A1.dts116
-rw-r--r--target/linux/ramips/dts/DIR-620-D1.dts101
-rw-r--r--target/linux/ramips/dts/DIR-645.dts138
-rw-r--r--target/linux/ramips/dts/ESR-9753.dts96
-rw-r--r--target/linux/ramips/dts/F5D8235_V1.dts99
-rw-r--r--target/linux/ramips/dts/F5D8235_V2.dts116
-rw-r--r--target/linux/ramips/dts/FONERA20N.dts130
-rw-r--r--target/linux/ramips/dts/FREESTATION5.dts103
-rw-r--r--target/linux/ramips/dts/HW550-3G.dts114
-rw-r--r--target/linux/ramips/dts/MOFI3500-3GN.dts114
-rw-r--r--target/linux/ramips/dts/MZK-W300NH2.dts111
-rw-r--r--target/linux/ramips/dts/NBG-419N.dts95
-rw-r--r--target/linux/ramips/dts/NW718.dts106
-rw-r--r--target/linux/ramips/dts/OMNI-EMB-HPM.dts149
-rw-r--r--target/linux/ramips/dts/OMNI-EMB.dts94
-rw-r--r--target/linux/ramips/dts/PSR-680W.dts95
-rw-r--r--target/linux/ramips/dts/PWH2004.dts91
-rw-r--r--target/linux/ramips/dts/RT-G32-B1.dts85
-rw-r--r--target/linux/ramips/dts/RT-N10-PLUS.dts91
-rw-r--r--target/linux/ramips/dts/RT-N13U.dts99
-rw-r--r--target/linux/ramips/dts/RT-N15.dts95
-rw-r--r--target/linux/ramips/dts/RTN56U.dts136
-rw-r--r--target/linux/ramips/dts/SL-R7205.dts95
-rw-r--r--target/linux/ramips/dts/TEW-691GR.dts111
-rw-r--r--target/linux/ramips/dts/TEW-692GR.dts112
-rw-r--r--target/linux/ramips/dts/UR-326N4G.dts112
-rw-r--r--target/linux/ramips/dts/UR-336UN.dts89
-rw-r--r--target/linux/ramips/dts/V11STFE.dts93
-rw-r--r--target/linux/ramips/dts/V22RW-2X2.dts99
-rw-r--r--target/linux/ramips/dts/W150M.dts111
-rw-r--r--target/linux/ramips/dts/W306R_V20.dts90
-rw-r--r--target/linux/ramips/dts/W502U.dts103
-rw-r--r--target/linux/ramips/dts/WCR150GN.dts99
-rw-r--r--target/linux/ramips/dts/WHR-G300N.dts86
-rw-r--r--target/linux/ramips/dts/WL-351.dts119
-rw-r--r--target/linux/ramips/dts/WL341V3.dts119
-rw-r--r--target/linux/ramips/dts/WLI-TX4-AG300N.dts101
-rw-r--r--target/linux/ramips/dts/WL_330N.dts97
-rw-r--r--target/linux/ramips/dts/WL_330N3G.dts105
-rw-r--r--target/linux/ramips/dts/WNCE2001.dts138
-rw-r--r--target/linux/ramips/dts/WR512-3GN-4M.dts112
-rw-r--r--target/linux/ramips/dts/WR512-3GN-8M.dts112
-rw-r--r--target/linux/ramips/dts/WR6202.dts115
-rw-r--r--target/linux/ramips/dts/XDXRN502J.dts95
-rw-r--r--target/linux/ramips/dts/mt7620.dtsi140
-rw-r--r--target/linux/ramips/dts/rt2880.dtsi157
-rw-r--r--target/linux/ramips/dts/rt3050.dtsi179
-rw-r--r--target/linux/ramips/dts/rt3352.dtsi188
-rw-r--r--target/linux/ramips/dts/rt3883.dtsi291
-rw-r--r--target/linux/ramips/dts/rt5350.dtsi188
73 files changed, 8240 insertions, 0 deletions
diff --git a/target/linux/ramips/dts/3G-6200N.dts b/target/linux/ramips/dts/3G-6200N.dts
new file mode 100644
index 000000000..9f600276e
--- /dev/null
+++ b/target/linux/ramips/dts/3G-6200N.dts
@@ -0,0 +1,110 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "3G-6200N", "ralink,rt3050-soc";
+ model = "Edimax 3g-6200n";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@3e0000 {
+ label = "cimage";
+ reg = <0x3e0000 0x20000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x390000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "edimax:green:power";
+ gpios = <&gpio0 9 1>;
+ };
+ wlan {
+ label = "edimax:amber:wlan";
+ gpios = <&gpio0 14 1>;
+ };
+ 3g {
+ label = "edimax:blue:3g";
+ gpios = <&gpio0 7 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x211>;
+ };
+ wlanswitch {
+ label = "wlanswitch";
+ gpios = <&gpio0 13 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/3G-6200NL.dts b/target/linux/ramips/dts/3G-6200NL.dts
new file mode 100644
index 000000000..0dca09874
--- /dev/null
+++ b/target/linux/ramips/dts/3G-6200NL.dts
@@ -0,0 +1,97 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "3G-6200N", "ralink,rt3050-soc";
+ model = "Edimax 3g-6200n";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@3e0000 {
+ label = "cimage";
+ reg = <0x3e0000 0x20000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x390000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wlan {
+ label = "edimax:amber:wlan";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/3G300M.dts b/target/linux/ramips/dts/3G300M.dts
new file mode 100644
index 000000000..6d2411b3c
--- /dev/null
+++ b/target/linux/ramips/dts/3G300M.dts
@@ -0,0 +1,118 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "3G300M", "ralink,rt3052-soc";
+ model = "Tenda 3G300M";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ 3grouter {
+ label = "tenda:blue:3grouter";
+ gpios = <&gpio0 11 1>;
+ };
+ ap {
+ label = "tenda:blue:ap";
+ gpios = <&gpio0 12 1>;
+ };
+ wisprouter {
+ label = "tenda:blue:wisprouter";
+ gpios = <&gpio0 9 1>;
+ };
+ wirelessrouter {
+ label = "tenda:blue:wirelessrouter";
+ gpios = <&gpio0 13 1>;
+ };
+ 3g {
+ label = "tenda:blue:3g";
+ gpios = <&gpio0 7 1>;
+ };
+ wpsreset {
+ label = "tenda:blue:wpsreset";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ mode {
+ label = "mode";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/AIR3GII.dts b/target/linux/ramips/dts/AIR3GII.dts
new file mode 100644
index 000000000..36a8f1055
--- /dev/null
+++ b/target/linux/ramips/dts/AIR3GII.dts
@@ -0,0 +1,92 @@
+/dts-v1/;
+
+/include/ "rt5350.dtsi"
+
+/ {
+ compatible = "AIR3GII", "ralink,rt5350-soc";
+ model = "AirLive Air3GII";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "en25q32b";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "en25q32b";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wlan {
+ label = "airlive:green:wlan";
+ gpios = <&gpio0 8 0>;
+ };
+ mobile {
+ label = "airlive:green:mobile";
+ gpios = <&gpio0 9 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/ALL0239-3G.dts b/target/linux/ramips/dts/ALL0239-3G.dts
new file mode 100644
index 000000000..023ccd2fa
--- /dev/null
+++ b/target/linux/ramips/dts/ALL0239-3G.dts
@@ -0,0 +1,114 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "ALL0239-3G", "ralink,rt3052-soc";
+ model = "Allnet ALL0239-3G";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ usb {
+ label = "hw550-3g:green:usb";
+ gpios = <&gpio0 8 1>;
+ };
+ 3g {
+ label = "hw550-3g:green:3g";
+ gpios = <&gpio0 11 1>;
+ };
+ status {
+ label = "hw550-3g:green:status";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "hw550-3g:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ connect {
+ label = "connect";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0xda>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/ALL0256N-4M.dts b/target/linux/ramips/dts/ALL0256N-4M.dts
new file mode 100644
index 000000000..ae5723812
--- /dev/null
+++ b/target/linux/ramips/dts/ALL0256N-4M.dts
@@ -0,0 +1,96 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "ALL0256N", "ralink,rt3050-soc";
+ model = "Allnet ALL0256N";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3c8000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ rssilow {
+ label = "all0256n:green:rssilow";
+ gpios = <&gpio0 14 1>;
+ };
+ rssimed {
+ label = "all0256n:green:rssimed";
+ gpios = <&gpio0 12 1>;
+ };
+ rssihigh {
+ label = "all0256n:green:rssihigh";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/ALL0256N-8M.dts b/target/linux/ramips/dts/ALL0256N-8M.dts
new file mode 100644
index 000000000..74a95bc09
--- /dev/null
+++ b/target/linux/ramips/dts/ALL0256N-8M.dts
@@ -0,0 +1,96 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "ALL0256N", "ralink,rt3050-soc";
+ model = "Allnet ALL0256N";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ rssilow {
+ label = "all0256n:green:rssilow";
+ gpios = <&gpio0 14 1>;
+ };
+ rssimed {
+ label = "all0256n:green:rssimed";
+ gpios = <&gpio0 12 1>;
+ };
+ rssihigh {
+ label = "all0256n:green:rssihigh";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/ALL5002.dts b/target/linux/ramips/dts/ALL5002.dts
new file mode 100644
index 000000000..0ede2e321
--- /dev/null
+++ b/target/linux/ramips/dts/ALL5002.dts
@@ -0,0 +1,108 @@
+/dts-v1/;
+
+/include/ "rt3352.dtsi"
+
+/ {
+ compatible = "ALL5002", "ralink,rt3352-soc";
+ model = "Allnet ALL5002";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "i2c";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l25635e";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l25635e";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x1fb0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ ehci@101c0000 {
+ status = "okay";
+ };
+
+ ohci@101c1000 {
+ status = "okay";
+ };
+
+ i2c-gpio {
+ compatible = "i2c-gpio";
+
+ gpios = <&gpio0 1 0 &gpio0 2 0>;
+ i2c-gpio,delay-us = <10>;
+
+ pcf0: iexp@38 {
+ #gpio-cells = <2>;
+ compatible = "inxp,pcf8574a";
+ reg = <0x38>;
+ gpio-controller;
+ };
+
+ hwmon@4b {
+ compatible = "national,lm92";
+ reg = <0x4b>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ ld1 {
+ label = "allnet:green:ld1";
+ gpios = <&pcf0 0 1>;
+ };
+ ld2 {
+ label = "allnet:green:ld2";
+ gpios = <&pcf0 1 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/ALL5003.dts b/target/linux/ramips/dts/ALL5003.dts
new file mode 100644
index 000000000..581304e3a
--- /dev/null
+++ b/target/linux/ramips/dts/ALL5003.dts
@@ -0,0 +1,108 @@
+/dts-v1/;
+
+/include/ "rt5350.dtsi"
+
+/ {
+ compatible = "ALL5003", "ralink,rt5350-soc";
+ model = "Allnet ALL5003";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "i2c";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l25635e";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l25635e";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x1fb0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ ehci@101c0000 {
+ status = "okay";
+ };
+
+ ohci@101c1000 {
+ status = "okay";
+ };
+
+ i2c-gpio {
+ compatible = "i2c-gpio";
+
+ gpios = <&gpio0 1 0 &gpio0 2 0>;
+ i2c-gpio,delay-us = <10>;
+
+ pcf0: iexp@38 {
+ #gpio-cells = <2>;
+ compatible = "inxp,pcf8574a";
+ reg = <0x38>;
+ gpio-controller;
+ };
+
+ hwmon@4b {
+ compatible = "national,lm92";
+ reg = <0x4b>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ ld1 {
+ label = "allnet:green:ld1";
+ gpios = <&pcf0 0 1>;
+ };
+ ld2 {
+ label = "allnet:green:ld2";
+ gpios = <&pcf0 1 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/ARGUS_ATP52B.dts b/target/linux/ramips/dts/ARGUS_ATP52B.dts
new file mode 100644
index 000000000..b5c94a5f3
--- /dev/null
+++ b/target/linux/ramips/dts/ARGUS_ATP52B.dts
@@ -0,0 +1,98 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "ARGUS_ATP52B", "ralink,rt3052-soc";
+ model = "Argus ATP-52B";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "bootloader";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "config";
+ reg = <0x30000 0x10000>;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7a0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ run {
+ label = "argus-atp52b:green:run";
+ gpios = <&gpio0 9 1>;
+ };
+ net {
+ label = "argus-atp52b:amber:net";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/ASL26555-16M.dts b/target/linux/ramips/dts/ASL26555-16M.dts
new file mode 100644
index 000000000..e9477b47d
--- /dev/null
+++ b/target/linux/ramips/dts/ASL26555-16M.dts
@@ -0,0 +1,138 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "ASL26555", "ralink,rt3050-soc";
+ model = "Alpha ASL26555";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "mdio", "uartlite", "sdram", "rgmii";
+ ralink,gpiomux = "i2c", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "s25sl12801";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "s25sl12801";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+ partition@30000 {
+ label = "uboot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+ partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0xf80000>;
+ };
+ partition@fd0000 {
+ label = "cert";
+ reg = <0xfd0000 0x10000>;
+ read-only;
+ };
+ partition@fe0000 {
+ label = "langpack";
+ reg = <0xfe0000 0x10000>;
+ read-only;
+ };
+ partition@ff0000 {
+ label = "devdata";
+ reg = <0xff0000 0x10000>;
+ read-only;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x1e>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 0>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 12 0>;
+ linux,code = <0x211>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ eth {
+ label = "asl26555:green:eth";
+ gpios = <&gpio0 0 1>;
+ };
+ wan-red {
+ label = "asl26555:red:wan";
+ gpios = <&gpio0 1 0>;
+ };
+ wan-green {
+ label = "asl26555:green:wan";
+ gpios = <&gpio0 2 0>;
+ };
+ wlan {
+ label = "asl26555:green:wlan";
+ gpios = <&gpio0 7 0>;
+ };
+ power-green {
+ label = "asl26555:green:power";
+ gpios = <&gpio0 8 0>;
+ };
+ power-red {
+ label = "asl26555:red:power";
+ gpios = <&gpio0 9 0>;
+ };
+ 3g-green {
+ label = "asl26555:green:3g";
+ gpios = <&gpio0 14 1>;
+ };
+ 3g-red {
+ label = "asl26555:red:3g";
+ gpios = <&gpio0 17 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/ASL26555-8M.dts b/target/linux/ramips/dts/ASL26555-8M.dts
new file mode 100644
index 000000000..0a403c195
--- /dev/null
+++ b/target/linux/ramips/dts/ASL26555-8M.dts
@@ -0,0 +1,133 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "ASL26555", "ralink,rt3050-soc";
+ model = "Alpha ASL26555";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "mdio", "uartlite", "sdram", "rgmii";
+ ralink,gpiomux = "i2c", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "s25sl064p";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "s25sl064p";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+ partition@40000 {
+ label = "rgdb";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x790000>;
+ };
+ partition@7e0000 {
+ label = "cert";
+ reg = <0x7e0000 0x10000>;
+ read-only;
+ };
+ partition@7f0000 {
+ label = "langpack";
+ reg = <0x7f0000 0x10000>;
+ read-only;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x1e>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 0>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 12 0>;
+ linux,code = <0x211>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ eth {
+ label = "asl26555:green:eth";
+ gpios = <&gpio0 0 1>;
+ };
+ wan-red {
+ label = "asl26555:red:wan";
+ gpios = <&gpio0 1 0>;
+ };
+ wan-green {
+ label = "asl26555:green:wan";
+ gpios = <&gpio0 2 0>;
+ };
+ wlan {
+ label = "asl26555:green:wlan";
+ gpios = <&gpio0 7 0>;
+ };
+ power-green {
+ label = "asl26555:green:power";
+ gpios = <&gpio0 8 0>;
+ };
+ power-red {
+ label = "asl26555:red:power";
+ gpios = <&gpio0 9 0>;
+ };
+ 3g-green {
+ label = "asl26555:green:3g";
+ gpios = <&gpio0 14 1>;
+ };
+ 3g-red {
+ label = "asl26555:red:3g";
+ gpios = <&gpio0 17 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/BC2.dts b/target/linux/ramips/dts/BC2.dts
new file mode 100644
index 000000000..8b97169ac
--- /dev/null
+++ b/target/linux/ramips/dts/BC2.dts
@@ -0,0 +1,92 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "BC2", "ralink,rt3052-soc";
+ model = "NexAira BC2";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ usb {
+ label = "bc2:blue:usb";
+ gpios = <&gpio0 20 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 17 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/BR-6425.dts b/target/linux/ramips/dts/BR-6425.dts
new file mode 100644
index 000000000..7529b6b6e
--- /dev/null
+++ b/target/linux/ramips/dts/BR-6425.dts
@@ -0,0 +1,73 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "BR-6425", "ralink,rt3052-soc";
+ model = "Edimax BR-6425";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "edimax:green:power";
+ gpios = <&gpio0 9 1>;
+ };
+ wlan {
+ label = "edimax:orange:wlan";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset_wps {
+ label = "reset_wps";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x198>;
+ };
+ rfkill {
+ label = "RFKILL switch";
+ gpios = <&gpio0 13 1>;
+ linux,code = <0xf7>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/BROADWAY.dts b/target/linux/ramips/dts/BROADWAY.dts
new file mode 100644
index 000000000..a24d829a7
--- /dev/null
+++ b/target/linux/ramips/dts/BROADWAY.dts
@@ -0,0 +1,95 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "BROADWAY", "ralink,rt3052-soc";
+ model = "Hauppauge Broadway";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "bootloader";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "config";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x790000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ diskmounted {
+ label = "red:diskmounted";
+ gpios = <&gpio0 9 1>;
+ };
+ wps_active {
+ label = "red:wps_active";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ factory {
+ label = "Factory Reset button";
+ gpios = <&gpio0 13 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/CARAMBOLA.dts b/target/linux/ramips/dts/CARAMBOLA.dts
new file mode 100644
index 000000000..68048edcf
--- /dev/null
+++ b/target/linux/ramips/dts/CARAMBOLA.dts
@@ -0,0 +1,83 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "CARAMBOLA", "ralink,rt3050-soc";
+ model = "8devices Carambola";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite", "sdram", "rgmii";
+ ralink,gpiomux = "i2c", "spi", "jtag", "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+
+ i2c-gpio {
+ compatible = "i2c-gpio";
+
+ gpios = <&gpio0 1 0 &gpio0 2 0>;
+ i2c-gpio,delay-us = <10>;
+ };
+};
diff --git a/target/linux/ramips/dts/D105.dts b/target/linux/ramips/dts/D105.dts
new file mode 100644
index 000000000..9b1df68a1
--- /dev/null
+++ b/target/linux/ramips/dts/D105.dts
@@ -0,0 +1,96 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "D105", "ralink,rt3050-soc";
+ model = "Huawei D105";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "d105:red:power";
+ gpios = <&gpio0 0 1>;
+ };
+ wps {
+ label = "d105:green:usb";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/DAP-1350.dts b/target/linux/ramips/dts/DAP-1350.dts
new file mode 100644
index 000000000..4eab53abe
--- /dev/null
+++ b/target/linux/ramips/dts/DAP-1350.dts
@@ -0,0 +1,124 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "DAP-1350", "ralink,rt3052-soc";
+ model = "D-Link DAP-1350";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "devconf";
+ reg = <0x40000 0x30000>;
+ read-only;
+ };
+
+ partition@70000 {
+ label = "devlang";
+ reg = <0x70000 0x40000>;
+ read-only;
+ };
+
+ partition@b0000 {
+ label = "firmware";
+ reg = <0xb0000 0x750000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "d-link:blue:power";
+ gpios = <&gpio0 8 1>;
+ };
+ power2 {
+ label = "d-link:red:power";
+ gpios = <&gpio0 9 1>;
+ };
+ wps {
+ label = "d-link:blue:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ rt {
+ label = "rt";
+ gpios = <&gpio0 11 1>;
+ linux,code = <0x100>;
+ };
+ ap {
+ label = "ap";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x101>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-300-B1.dts b/target/linux/ramips/dts/DIR-300-B1.dts
new file mode 100644
index 000000000..0297b8cf9
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-300-B1.dts
@@ -0,0 +1,108 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "DIR-300-B1", "ralink,rt3050-soc";
+ model = "D-Link DIR-300 B1";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "devconf";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:amber:status";
+ gpios = <&gpio0 8 1>;
+ };
+ status2 {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wan {
+ label = "d-link:amber:wan";
+ gpios = <&gpio0 14 1>;
+ };
+ wan2 {
+ label = "d-link:green:wan";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "d-link:blue:wps";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-600-B1.dts b/target/linux/ramips/dts/DIR-600-B1.dts
new file mode 100644
index 000000000..5d78538b0
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-600-B1.dts
@@ -0,0 +1,107 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "DIR-600-B1", "ralink,rt3050-soc";
+ model = "D-Link DIR-600 B1";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "devconf";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:amber:status";
+ gpios = <&gpio0 8 1>;
+ };
+ status2 {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wan {
+ label = "d-link:amber:wan";
+ gpios = <&gpio0 14 1>;
+ };
+ wan2 {
+ label = "d-link:green:wan";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "d-link:blue:wps";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-600-B2.dts b/target/linux/ramips/dts/DIR-600-B2.dts
new file mode 100644
index 000000000..ff15ac843
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-600-B2.dts
@@ -0,0 +1,107 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "DIR-600-B2", "ralink,rt3050-soc";
+ model = "D-Link DIR-600 B2";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "devconf";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:amber:status";
+ gpios = <&gpio0 8 1>;
+ };
+ status2 {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wan {
+ label = "d-link:amber:wan";
+ gpios = <&gpio0 14 1>;
+ };
+ wan2 {
+ label = "d-link:green:wan";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "d-link:blue:wps";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-615-D.dts b/target/linux/ramips/dts/DIR-615-D.dts
new file mode 100644
index 000000000..21de0e8cc
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-615-D.dts
@@ -0,0 +1,108 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "DIR-615-D", "ralink,rt3050-soc";
+ model = "D-Link DIR-615 D";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "devconf";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:amber:status";
+ gpios = <&gpio0 8 1>;
+ };
+ status2 {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wan {
+ label = "d-link:amber:wan";
+ gpios = <&gpio0 14 1>;
+ };
+ wan2 {
+ label = "d-link:green:wan";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "d-link:blue:wps";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-615-H1.dts b/target/linux/ramips/dts/DIR-615-H1.dts
new file mode 100644
index 000000000..be852cd06
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-615-H1.dts
@@ -0,0 +1,109 @@
+/dts-v1/;
+
+/include/ "rt3352.dtsi"
+
+/ {
+ compatible = "DIR-615-H1", "ralink,rt3352-soc";
+ model = "D-Link DIR-615 H1";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:amber:status";
+ gpios = <&gpio0 7 0>;
+ };
+ status2 {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 0>;
+ };
+ wan {
+ label = "d-link:amber:wan";
+ gpios = <&gpio0 12 1>;
+ };
+ wan2 {
+ label = "d-link:green:wan";
+ gpios = <&gpio0 13 1>;
+ };
+ wps {
+ label = "d-link:blue:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-620-A1.dts b/target/linux/ramips/dts/DIR-620-A1.dts
new file mode 100644
index 000000000..87292246e
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-620-A1.dts
@@ -0,0 +1,116 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "DIR-620-A1", "ralink,rt3050-soc";
+ model = "D-Link DIR-620 A1";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:amber:status";
+ gpios = <&gpio0 8 1>;
+ };
+ status2 {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wan {
+ label = "d-link:amber:wan";
+ gpios = <&gpio0 14 1>;
+ };
+ wan2 {
+ label = "d-link:green:wan";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "d-link:blue:wps";
+ gpios = <&gpio0 13 0>;
+ };
+ wps2 {
+ label = "d-link:amber:wps";
+ gpios = <&gpio0 11 0>;
+ };
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-620-D1.dts b/target/linux/ramips/dts/DIR-620-D1.dts
new file mode 100644
index 000000000..d2650330c
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-620-D1.dts
@@ -0,0 +1,101 @@
+/dts-v1/;
+
+/include/ "rt3352.dtsi"
+
+/ {
+ compatible = "DIR-620-D1", "ralink,rt3352-soc";
+ model = "D-Link DIR-620 D1";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l6405d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l6405d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "d-link:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wifi {
+ label = "d-link:green:wifi";
+ gpios = <&gpio0 17 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset_wps {
+ label = "reset_wps";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ ehci@101c0000 {
+ status = "okay";
+ };
+
+ ohci@101c1000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/DIR-645.dts b/target/linux/ramips/dts/DIR-645.dts
new file mode 100644
index 000000000..e0b375200
--- /dev/null
+++ b/target/linux/ramips/dts/DIR-645.dts
@@ -0,0 +1,138 @@
+/dts-v1/;
+
+/include/ "rt3883.dtsi"
+
+/ {
+ compatible = "DIR-645", "ralink,rt3883-soc";
+ model = "D-Link DIR-645";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite", "spi";
+ ralink,gpiomux = "i2c", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ timer@100 {
+ status = "okay";
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ gpio1: gpio@638 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l6405d";
+ reg = <0 0>;
+ linux,modalias = "m25p80";
+ spi-max-frequency = <25000000>;
+ partition@0 {
+ label = "uboot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+ partition@30000 {
+ label = "uboot-env";
+ reg = <0x30000 0x4000>;
+ read-only;
+ };
+ factory: partition@34000 {
+ label = "factory";
+ reg = <0x34000 0x4000>;
+ read-only;
+ };
+ partition@38000 {
+ label = "nvram";
+ reg = <0x38000 0x8000>;
+ read-only;
+ };
+ partition@40000 {
+ label = "devdata";
+ reg = <0x40000 0x10000>;
+ };
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+
+ mtd-mac-address = <&factory 0x28>;
+ ralink,fixed-link = <1000 1 1 1>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ ralink,5ghz = <0>;
+ };
+
+ ehci@101c0000 {
+ status = "okay";
+ };
+
+ ohci@101c1000 {
+ status = "okay";
+ };
+
+ rtl8367b {
+ compatible = "realtek,rtl8367b";
+ gpio-sda = <&gpio0 1 0>;
+ gpio-sck = <&gpio0 2 0>;
+ realtek,extif1 = <1 0 1 1 1 1 1 1 2>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 9 0>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 14 0>;
+ linux,code = <0x211>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ inet {
+ label = "d-link:green:inet";
+ gpios = <&gpio0 0 1>;
+ };
+ wps {
+ label = "d-link:green:wps";
+ gpios = <&gpio1 2 0>;
+ };
+ };
+
+ gpio_export {
+ compatible = "gpio-export";
+ #size-cells = <0>;
+
+ usb {
+ gpio-export,name = "usb";
+ gpio-export,output = <1>;
+ gpios = <&gpio1 6 0>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/ESR-9753.dts b/target/linux/ramips/dts/ESR-9753.dts
new file mode 100644
index 000000000..5c5f0bbbe
--- /dev/null
+++ b/target/linux/ramips/dts/ESR-9753.dts
@@ -0,0 +1,96 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "ESR-9753", "ralink,rt3052-soc";
+ model = "Senao / EnGenius ESR-9753";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "esr-9753:orange:power";
+ gpios = <&gpio0 8 1>;
+ };
+ wps {
+ label = "esr-9753:orange:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/F5D8235_V1.dts b/target/linux/ramips/dts/F5D8235_V1.dts
new file mode 100644
index 000000000..41a7f122c
--- /dev/null
+++ b/target/linux/ramips/dts/F5D8235_V1.dts
@@ -0,0 +1,99 @@
+/dts-v1/;
+
+/include/ "rt2880.dtsi"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "F5D8235_V1", "ralink,rt2880-soc";
+ model = "Belkin F5D8235 v1";
+
+ palmbus@300000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite";
+ ralink,gpiomux = "i2c";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+ partition@30000 {
+ label = "uboot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+ partition@40000 {
+ label = "calibration";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+ partition@50000 {
+ label = "linux";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@400000 {
+ status = "okay";
+
+ ralink,fixed-link = <1000 1 1 1>;
+ };
+
+ wmac@480000 {
+ status = "okay";
+ };
+
+ rtl8367s {
+ compatible = "realtek,rtl8367s";
+ gpio-sda = <&gpio0 1 0>;
+ gpio-sck = <&gpio0 2 0>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio0 9 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ storage {
+ label = "f5d8235-v1:blue:storage";
+ gpios = <&gpio0 7 1>;
+ };
+ storage2 {
+ label = "f5d8235-v1:orange:storage";
+ gpios = <&gpio0 8 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/F5D8235_V2.dts b/target/linux/ramips/dts/F5D8235_V2.dts
new file mode 100644
index 000000000..10b803781
--- /dev/null
+++ b/target/linux/ramips/dts/F5D8235_V2.dts
@@ -0,0 +1,116 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "F5D8235_V2", "ralink,rt3052-soc";
+ model = "Belkin F5D8235 v2";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "i2c", "spi", "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x50000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x790000>;
+ };
+
+ partition@7e0000 {
+ label = "nvram";
+ reg = <0x7e0000 0x10000>;
+ };
+
+ factory: partition@7f0000 {
+ label = "factory";
+ reg = <0x7f0000 0x10000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+
+ rtl8366rb {
+ compatible = "rtl8367rb";
+ gpio-sda = <&gpio0 1 0>;
+ gpio-sck = <&gpio0 2 0>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ internet {
+ label = "f5d8235v2:blue:internet";
+ gpios = <&gpio0 5 1>;
+ };
+ internet2 {
+ label = "f5d8235v2:amber:internet";
+ gpios = <&gpio0 6 1>;
+ };
+ modem {
+ label = "f5d8235v2:blue:modem";
+ gpios = <&gpio0 11 1>;
+ };
+ modem2 {
+ label = "f5d8235v2:amber:modem";
+ gpios = <&gpio0 8 1>;
+ };
+ router {
+ label = "f5d8235v2:blue:router";
+ gpios = <&gpio0 9 1>;
+ };
+ storage {
+ label = "f5d8235v2:blue:storage";
+ gpios = <&gpio0 23 1>;
+ };
+ storage2 {
+ label = "f5d8235v2:amber:storage";
+ gpios = <&gpio0 22 1>;
+ };
+ security {
+ label = "f5d8235v2:blue:security";
+ gpios = <&gpio0 13 1>;
+ };
+ security2 {
+ label = "f5d8235v2:amber:security";
+ gpios = <&gpio0 12 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/FONERA20N.dts b/target/linux/ramips/dts/FONERA20N.dts
new file mode 100644
index 000000000..38007a7bc
--- /dev/null
+++ b/target/linux/ramips/dts/FONERA20N.dts
@@ -0,0 +1,130 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "FONERA20N", "ralink,rt3052-soc";
+ model = "La Fonera 2.0N";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wifi {
+ label = "fonera20n:orange:wifi";
+ gpios = <&gpio0 7 1>;
+ };
+ power {
+ label = "fonera20n:green:power";
+ gpios = <&gpio0 9 1>;
+ };
+ usb {
+ label = "fonera20n:orange:usb";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x198>;
+ };
+ switch {
+ label = "switch";
+ gpios = <&gpio0 13 1>;
+ linux,code = <0x101>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+
+ port@0 {
+ compatible = "swconfig,port";
+ swconfig,segment = "lan";
+ swconfig,portmap = <0 4>;
+ };
+ port@1 {
+ compatible = "swconfig,port";
+ swconfig,segment = "lan";
+ swconfig,portmap = <1 3>;
+ };
+ port@2 {
+ compatible = "swconfig,port";
+ swconfig,segment = "lan";
+ swconfig,portmap = <2 2>;
+ };
+ port@3 {
+ compatible = "swconfig,port";
+ swconfig,segment = "lan";
+ swconfig,portmap = <3 1>;
+ };
+ port@4 {
+ compatible = "swconfig,port";
+ swconfig,segment = "wan";
+ swconfig,portmap = <4 0>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/FREESTATION5.dts b/target/linux/ramips/dts/FREESTATION5.dts
new file mode 100644
index 000000000..a3cc8fc97
--- /dev/null
+++ b/target/linux/ramips/dts/FREESTATION5.dts
@@ -0,0 +1,103 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "FREESTATION5", "ralink,rt3050-soc";
+ model = "ARC FreeStation5";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x01>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+
+ gpio-export {
+ compatible = "gpio-export";
+ // Used to enable power-over-ethernet passthrough from port0 to port1.
+ // Disable passthrough by default to prevent accidental equipment damage.
+ poe {
+ gpio-export,name = "poe-passthrough";
+ gpio-export,output = <1>; // OUT_INIT_HIGH
+ gpios = <&gpio0 11 1>; // GPIO 11, ACTIVE_LOW
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ // The following leds are defined in the ArcOS firmware, but reportedly
+ // not present in the Freestation5 device.
+ wifi {
+ label = "freestation:unknown:wifi";
+ gpios = <&gpio0 7 1>;
+ };
+ powerg {
+ label = "freestation:unknown:powerg";
+ gpios = <&gpio0 9 1>;
+ };
+ usb {
+ label = "freestation:unknown:usb";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/HW550-3G.dts b/target/linux/ramips/dts/HW550-3G.dts
new file mode 100644
index 000000000..80adb0af3
--- /dev/null
+++ b/target/linux/ramips/dts/HW550-3G.dts
@@ -0,0 +1,114 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "HW550-3G", "ralink,rt3052-soc";
+ model = "Aztech HW550-3G";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ usb {
+ label = "hw550-3g:green:usb";
+ gpios = <&gpio0 8 1>;
+ };
+ 3g {
+ label = "hw550-3g:green:3g";
+ gpios = <&gpio0 11 1>;
+ };
+ status {
+ label = "hw550-3g:green:status";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "hw550-3g:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ connect {
+ label = "connect";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0xda>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/MOFI3500-3GN.dts b/target/linux/ramips/dts/MOFI3500-3GN.dts
new file mode 100644
index 000000000..80cd72746
--- /dev/null
+++ b/target/linux/ramips/dts/MOFI3500-3GN.dts
@@ -0,0 +1,114 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "MOFI3500-3GN", "ralink,rt3052-soc";
+ model = "MoFi Network MOFI3500-3GN";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ usb {
+ label = "mofi3500-3gn:green:usb";
+ gpios = <&gpio0 8 1>;
+ };
+ 3g {
+ label = "mofi3500-3gn:green:3g";
+ gpios = <&gpio0 11 1>;
+ };
+ status {
+ label = "mofi3500-3gn:green:status";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "mofi3500-3gn:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ connect {
+ label = "connect";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0xda>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/MZK-W300NH2.dts b/target/linux/ramips/dts/MZK-W300NH2.dts
new file mode 100644
index 000000000..29032b450
--- /dev/null
+++ b/target/linux/ramips/dts/MZK-W300NH2.dts
@@ -0,0 +1,111 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "MZK-W300NH2", "ralink,rt3052-soc";
+ model = "Planex MZK-W300NH2";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "i2c", "spi", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@3e0000 {
+ label = "cimage";
+ reg = <0x3e0000 0x20000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x390000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "mzkw300nh2:green:power";
+ gpios = <&gpio0 9 1>;
+ };
+ wlan {
+ label = "mzkw300nh2:amber:wlan";
+ gpios = <&gpio0 14 1>;
+ };
+ wps {
+ label = "mzkw300nh2:amber:wps";
+ gpios = <&gpio0 11 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ rt {
+ label = "rt";
+ gpios = <&gpio0 13 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/NBG-419N.dts b/target/linux/ramips/dts/NBG-419N.dts
new file mode 100644
index 000000000..694812005
--- /dev/null
+++ b/target/linux/ramips/dts/NBG-419N.dts
@@ -0,0 +1,95 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "NBG-419N", "ralink,rt3052-soc";
+ model = "ZyXEL NBG-419N";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "nbg-419n:green:power";
+ gpios = <&gpio0 9 1>;
+ };
+ wps {
+ label = "nbg-419n:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/NW718.dts b/target/linux/ramips/dts/NW718.dts
new file mode 100644
index 000000000..78ad1d63a
--- /dev/null
+++ b/target/linux/ramips/dts/NW718.dts
@@ -0,0 +1,106 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "NW718", "ralink,rt3050-soc";
+ model = "Netcore NW718";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,gpiomux = "i2c";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <25000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "config";
+ reg = <0x30000 0x20000>;
+ read-only;
+ };
+
+ factory: partition@50000 {
+ label = "factory";
+ reg = <0x50000 0x10000>;
+ read-only;
+ };
+
+ partition@60000 {
+ label = "firmware";
+ reg = <0x60000 0x3a0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ cpu {
+ label = "nw718:amber:cpu";
+ gpios = <&gpio0 13 1>;
+ };
+ usb {
+ label = "nw718:amber:usb";
+ gpios = <&gpio0 8 1>;
+ };
+ wps {
+ label = "nw718:amber:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/OMNI-EMB-HPM.dts b/target/linux/ramips/dts/OMNI-EMB-HPM.dts
new file mode 100644
index 000000000..814829489
--- /dev/null
+++ b/target/linux/ramips/dts/OMNI-EMB-HPM.dts
@@ -0,0 +1,149 @@
+/dts-v1/;
+
+/include/ "rt3883.dtsi"
+
+/ {
+ compatible = "OMNI-EMB-HPM", "ralink,rt3883-soc";
+ model = "Omnima EMB HPM";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite", "spi";
+ ralink,gpiomux = "i2c", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ timer@100 {
+ status = "okay";
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+
+ m25p80@0 {
+ compatible = "macronix,mx25l12805d";
+ spi-max-frequency = <25000000>;
+ reg = <0>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ reg = <0x0 0x0030000>;
+ label = "u-boot";
+ read-only;
+ };
+
+ partition@30000 {
+ reg = <0x00030000 0x00010000>;
+ label = "config";
+ read-only;
+ };
+
+ partition@40000 {
+ reg = <0x00040000 0x00010000>;
+ label = "factory";
+ read-only;
+ };
+
+ partition@50000 {
+ reg = <0x00050000 0x00fb0000>;
+ label = "firmware";
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+
+ phy-handle = <&phy0>;
+ phy-mode = "rgmii";
+
+ mdio-bus {
+ status = "okay";
+
+ phy0: ethernet-phy@4 {
+ reg = <4>;
+ };
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ ehci@101c0000 {
+ status = "okay";
+ };
+
+ ohci@101c1000 {
+ status = "okay";
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 14 0>;
+ linux,code = <0x198>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ power {
+ label = "emb:orange:power";
+ gpios = <&gpio0 7 1>;
+ };
+ status {
+ label = "emb:green:status";
+ gpios = <&gpio0 21 1>;
+ };
+ eth {
+ label = "emb:green:eth";
+ gpios = <&gpio0 20 1>;
+ };
+ eth2 {
+ label = "emb:red:eth";
+ gpios = <&gpio0 18 1>;
+ };
+ wifi {
+ label = "emb:green:wifi";
+ gpios = <&gpio0 17 1>;
+ };
+ wifi2 {
+ label = "emb:red:wifi";
+ gpios = <&gpio0 19 1>;
+ };
+ };
+
+ gpio_export {
+ compatible = "gpio-export";
+ #size-cells = <0>;
+ /* gpio 12 and 13 handle the OC input */
+ usb0 {
+ gpio-export,name = "usb0";
+ gpio-export,output = <1>;
+ gpios = <&gpio0 2 0>;
+ };
+ usb1 {
+ gpio-export,name = "usb1";
+ gpio-export,output = <1>;
+ gpios = <&gpio0 1 0>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/OMNI-EMB.dts b/target/linux/ramips/dts/OMNI-EMB.dts
new file mode 100644
index 000000000..704a5a166
--- /dev/null
+++ b/target/linux/ramips/dts/OMNI-EMB.dts
@@ -0,0 +1,94 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "OMNI-EMB", "ralink,rt3052-soc";
+ model = "Omnima MiniEMBWiFi";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ status {
+ label = "emb:green:status";
+ gpios = <&gpio0 9 1>;
+ };
+ wlan {
+ label = "emb:green:wlan";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/PSR-680W.dts b/target/linux/ramips/dts/PSR-680W.dts
new file mode 100644
index 000000000..f91eb2fe7
--- /dev/null
+++ b/target/linux/ramips/dts/PSR-680W.dts
@@ -0,0 +1,95 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "PSR-680W", "ralink,rt3052-soc";
+ model = "Petatel PSR-680W Wireless 3G Router";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "uartlite", "sdram";
+ ralink,gpiomux = "spi", "jtag", "mdio", "rgmii";
+ ralink,uartmux = "i2s uartf";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wan {
+ label = "psr-680w:red:wan";
+ gpios = <&gpio0 19 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/PWH2004.dts b/target/linux/ramips/dts/PWH2004.dts
new file mode 100644
index 000000000..d526e836d
--- /dev/null
+++ b/target/linux/ramips/dts/PWH2004.dts
@@ -0,0 +1,91 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "PWH2004", "ralink,rt3052-soc";
+ model = "Prolink PWH2004";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wifi {
+ label = "pwh2004:red:wifi";
+ gpios = <&gpio0 14 1>;
+ };
+ power {
+ label = "pwh2004:green:power";
+ gpios = <&gpio0 9 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/RT-G32-B1.dts b/target/linux/ramips/dts/RT-G32-B1.dts
new file mode 100644
index 000000000..9a5cab45b
--- /dev/null
+++ b/target/linux/ramips/dts/RT-G32-B1.dts
@@ -0,0 +1,85 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "RT-G32-B1", "ralink,rt3050-soc";
+ model = "Asus RT-G32 B1";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "devconf";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/RT-N10-PLUS.dts b/target/linux/ramips/dts/RT-N10-PLUS.dts
new file mode 100644
index 000000000..2f070b741
--- /dev/null
+++ b/target/linux/ramips/dts/RT-N10-PLUS.dts
@@ -0,0 +1,91 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "RT-N10-PLUS", "ralink,rt3050-soc";
+ model = "Asus RT-N10+";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "devdata";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "devconf";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wps {
+ label = "asus:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/RT-N13U.dts b/target/linux/ramips/dts/RT-N13U.dts
new file mode 100644
index 000000000..162a5c85d
--- /dev/null
+++ b/target/linux/ramips/dts/RT-N13U.dts
@@ -0,0 +1,99 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "RT-N13U", "ralink,rt3052-soc";
+ model = "Asus RT-N13U";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "rt-n13u:power";
+ gpios = <&gpio0 7 1>;
+ };
+ wifi {
+ label = "rt-n13u:wifi";
+ gpios = <&gpio0 8 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <10>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/RT-N15.dts b/target/linux/ramips/dts/RT-N15.dts
new file mode 100644
index 000000000..2ff266cfd
--- /dev/null
+++ b/target/linux/ramips/dts/RT-N15.dts
@@ -0,0 +1,95 @@
+/dts-v1/;
+
+/include/ "rt2880.dtsi"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "RT-N15", "ralink,rt2880-soc";
+ model = "Asus RT-N15";
+
+ palmbus@300000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite";
+ ralink,gpiomux = "i2c";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+ partition@30000 {
+ label = "uboot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+ partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+ partition@50000 {
+ label = "linux";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@400000 {
+ status = "okay";
+
+ ralink,fixed-link = <1000 1 1 1>;
+ };
+
+ wmac@480000 {
+ status = "okay";
+ };
+
+ rtl8366s {
+ compatible = "realtek,rtl8366s";
+ gpio-sda = <&gpio0 1 0>;
+ gpio-sck = <&gpio0 2 0>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 0>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio0 12 0>;
+ linux,code = <0x198>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ power {
+ label = "rt-n15:blue:power";
+ gpios = <&gpio0 11 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/RTN56U.dts b/target/linux/ramips/dts/RTN56U.dts
new file mode 100644
index 000000000..0c09904f5
--- /dev/null
+++ b/target/linux/ramips/dts/RTN56U.dts
@@ -0,0 +1,136 @@
+/dts-v1/;
+
+/include/ "rt3883.dtsi"
+
+/ {
+ compatible = "RT-N56U", "ralink,rt3883-soc";
+ model = "Asus RT-N56U";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite";
+ ralink,gpiomux = "i2c", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,pcimux = "pci-fnc";
+ ralink,wdtmux = <0>;
+ };
+
+ timer@100 {
+ status = "okay";
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ gpio1: gpio@638 {
+ status = "okay";
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+
+ ralink,fixed-link = <1000 1 1 1>;
+ };
+
+ pci@10140000 {
+ status = "okay";
+
+ host-bridge {
+ pci-bridge@1 {
+ status = "okay";
+ };
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ ralink,2ghz = <0>;
+ };
+
+ ehci@101c0000 {
+ status = "okay";
+ };
+
+ ohci@101c1000 {
+ status = "okay";
+ };
+
+ nor-flash@1c000000 {
+ compatible = "cfi-flash";
+ reg = <0x1c000000 0x800000>;
+
+ bank-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ reg = <0x0 0x0030000>;
+ label = "u-boot";
+ read-only;
+ };
+
+ partition@30000 {
+ reg = <0x00030000 0x00010000>;
+ label = "u-boot-env";
+ read-only;
+ };
+
+ partition@40000 {
+ reg = <0x00040000 0x00010000>;
+ label = "factory";
+ read-only;
+ };
+
+ partition@50000 {
+ reg = <0x00050000 0x007b0000>;
+ label = "firmware";
+ };
+ };
+
+ rtl8367 {
+ compatible = "realtek,rtl8367";
+ gpio-sda = <&gpio0 1 0>;
+ gpio-sck = <&gpio0 2 0>;
+ realtek,extif1 = <1 0 1 1 1 1 1 1 2>;
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 13 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio1 2 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ power {
+ label = "asus:blue:power";
+ gpios = <&gpio0 0 1>;
+ };
+ lan {
+ label = "asus:blue:lan";
+ gpios = <&gpio0 19 1>;
+ };
+ wan {
+ label = "asus:blue:wan";
+ gpios = <&gpio1 3 1>;
+ };
+ usb {
+ label = "asus:blue:usb";
+ gpios = <&gpio1 0 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/SL-R7205.dts b/target/linux/ramips/dts/SL-R7205.dts
new file mode 100644
index 000000000..8f1fe851f
--- /dev/null
+++ b/target/linux/ramips/dts/SL-R7205.dts
@@ -0,0 +1,95 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "SL-R7205", "ralink,rt3052-soc";
+ model = "Skyline SL-R7205 Wireless 3G Router";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wifi {
+ label = "sl-r7205:green:wifi";
+ gpios = <&gpio0 7 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/TEW-691GR.dts b/target/linux/ramips/dts/TEW-691GR.dts
new file mode 100644
index 000000000..eb2d4bc6a
--- /dev/null
+++ b/target/linux/ramips/dts/TEW-691GR.dts
@@ -0,0 +1,111 @@
+/dts-v1/;
+
+/include/ "rt3883.dtsi"
+
+/ {
+ compatible = "TEW-691GR", "ralink,rt3883-soc";
+ model = "TRENDnet TEW-691GR";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite";
+ ralink,gpiomux = "i2c", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,pcimux = "pci-fnc";
+ ralink,wdtmux = <1>;
+ };
+
+ timer@100 {
+ status = "okay";
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ gpio1: gpio@638 {
+ status = "okay";
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ phy-handle = <&phy0>;
+ phy-mode = "rgmii";
+
+ mdio-bus {
+ status = "okay";
+
+ phy0: ethernet-phy@0 {
+ reg = <0>;
+ };
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ ralink,5ghz = <0>;
+ };
+
+ nor-flash@1c000000 {
+ compatible = "cfi-flash";
+ reg = <0x1c000000 0x800000>;
+
+ bank-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ reg = <0x0 0x0030000>;
+ label = "u-boot";
+ read-only;
+ };
+
+ partition@30000 {
+ reg = <0x00030000 0x00010000>;
+ label = "u-boot-env";
+ read-only;
+ };
+
+ partition@40000 {
+ reg = <0x00040000 0x00010000>;
+ label = "factory";
+ read-only;
+ };
+
+ partition@50000 {
+ reg = <0x00050000 0x007b0000>;
+ label = "firmware";
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio1 2 1>;
+ linux,code = <0x211>;
+ };
+ rfkill {
+ label = "rfkill";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0xf7>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wps {
+ label = "trendnet:green:wps";
+ gpios = <&gpio0 9 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/TEW-692GR.dts b/target/linux/ramips/dts/TEW-692GR.dts
new file mode 100644
index 000000000..f5d0d0484
--- /dev/null
+++ b/target/linux/ramips/dts/TEW-692GR.dts
@@ -0,0 +1,112 @@
+/dts-v1/;
+
+/include/ "rt3883.dtsi"
+
+/ {
+ compatible = "TEW-692GR", "ralink,rt3883-soc";
+ model = "TRENDnet TEW-692GR";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite";
+ ralink,gpiomux = "i2c", "jtag", "spi";
+ ralink,uartmux = "gpio";
+ ralink,pcimux = "pci-fnc";
+ ralink,wdtmux = <1>;
+ };
+
+ timer@100 {
+ status = "okay";
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ gpio1: gpio@638 {
+ status = "okay";
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ ralink,phy-mask = <0x1>;
+ phy-mode = "rgmii";
+ };
+
+ pci@10140000 {
+ status = "okay";
+
+ host-bridge {
+ pci-bridge@1 {
+ status = "okay";
+ };
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ ralink,5ghz = <0>;
+ };
+
+ nor-flash@1c000000 {
+ compatible = "cfi-flash";
+ reg = <0x1c000000 0x800000>;
+
+ bank-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ reg = <0x0 0x0030000>;
+ label = "u-boot";
+ read-only;
+ };
+
+ partition@30000 {
+ reg = <0x00030000 0x00010000>;
+ label = "u-boot-env";
+ read-only;
+ };
+
+ partition@40000 {
+ reg = <0x00040000 0x00010000>;
+ label = "factory";
+ read-only;
+ };
+
+ partition@50000 {
+ reg = <0x00050000 0x007b0000>;
+ label = "firmware";
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio1 2 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wps {
+ label = "trendnet:orange:wps";
+ gpios = <&gpio0 9 1>;
+ };
+ wps2 {
+ label = "trendnet:green:wps";
+ gpios = <&gpio1 4 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/UR-326N4G.dts b/target/linux/ramips/dts/UR-326N4G.dts
new file mode 100644
index 000000000..6bb360d9d
--- /dev/null
+++ b/target/linux/ramips/dts/UR-326N4G.dts
@@ -0,0 +1,112 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "UR-326N4G", "ralink,rt3052-soc";
+ model = "UR-326N4G Wireless N router";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ 3g {
+ label = "ur326:green:3g";
+ gpios = <&gpio0 9 1>;
+ };
+ gateway {
+ label = "ur326:green:gateway";
+ gpios = <&gpio0 11 1>;
+ };
+ ap {
+ label = "ur326:green:ap";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "ur326:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ station {
+ label = "ur326:green:station";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset_wps {
+ label = "reset_wps";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ mode {
+ label = "mode";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x32>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/UR-336UN.dts b/target/linux/ramips/dts/UR-336UN.dts
new file mode 100644
index 000000000..a5c284121
--- /dev/null
+++ b/target/linux/ramips/dts/UR-336UN.dts
@@ -0,0 +1,89 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "UR-336UN", "ralink,rt3052-soc";
+ model = "UR-336UN Wireless N router";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ 3g {
+ label = "ur336:green:3g";
+ gpios = <&gpio0 9 1>;
+ };
+ gateway {
+ label = "ur336:green:gateway";
+ gpios = <&gpio0 11 1>;
+ };
+ ap {
+ label = "ur336:green:ap";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "ur336:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ station {
+ label = "ur336:green:station";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset_wps {
+ label = "reset_wps";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ mode {
+ label = "mode";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x32>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/V11STFE.dts b/target/linux/ramips/dts/V11STFE.dts
new file mode 100644
index 000000000..20cbaea49
--- /dev/null
+++ b/target/linux/ramips/dts/V11STFE.dts
@@ -0,0 +1,93 @@
+/dts-v1/;
+
+/include/ "rt2880.dtsi"
+
+/ {
+ compatible = "V11ST-FE", "ralink,rt2880-soc";
+ model = "Ralink V11ST-FE";
+
+ palmbus@300000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite";
+ ralink,gpiomux = "i2c", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,pcimux = "pci-fnc";
+ ralink,wdtmux = <0>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ ethernet@400000 {
+ status = "okay";
+ };
+
+ wmac@480000 {
+ status = "okay";
+ };
+
+ pci@10140000 {
+ status = "okay";
+
+ host-bridge {
+ pci-bridge@1 {
+ status = "okay";
+ };
+ };
+ };
+
+ nor-flash@1c000000 {
+ compatible = "cfi-flash";
+ reg = <0x1c000000 0x800000>;
+
+ bank-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ reg = <0x0 0x0030000>;
+ label = "u-boot";
+ read-only;
+ };
+
+ partition@30000 {
+ reg = <0x00030000 0x00010000>;
+ label = "u-boot-env";
+ read-only;
+ };
+
+ partition@40000 {
+ reg = <0x00040000 0x00010000>;
+ label = "factory";
+ read-only;
+ };
+
+ partition@50000 {
+ reg = <0x00050000 0x003b0000>;
+ label = "firmware";
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 0>;
+ linux,code = <0x211>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ status {
+ label = "v11st-fe:green:status";
+ gpios = <&gpio0 12 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/V22RW-2X2.dts b/target/linux/ramips/dts/V22RW-2X2.dts
new file mode 100644
index 000000000..a4f8c3c77
--- /dev/null
+++ b/target/linux/ramips/dts/V22RW-2X2.dts
@@ -0,0 +1,99 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "V22RW-2X2", "ralink,rt3052-soc";
+ model = "Ralink AP-RT3052-V22RW-2X2";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ security {
+ label = "v22rw-2x2:green:security";
+ gpios = <&gpio0 13 1>;
+ };
+ wps {
+ label = "v22rw-2x2:red:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/W150M.dts b/target/linux/ramips/dts/W150M.dts
new file mode 100644
index 000000000..94f196064
--- /dev/null
+++ b/target/linux/ramips/dts/W150M.dts
@@ -0,0 +1,111 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "3G300M", "ralink,rt3050-soc";
+ model = "Tenda 3G300M";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "mdio", "sdram", "rgmii", "jtag";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3c8000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ 3grouter {
+ label = "tenda:blue:3grouter";
+ gpios = <&gpio0 11 1>;
+ };
+ ap {
+ label = "tenda:blue:ap";
+ gpios = <&gpio0 12 1>;
+ };
+ wisprouter {
+ label = "tenda:blue:wisprouter";
+ gpios = <&gpio0 9 1>;
+ };
+ wirelessrouter {
+ label = "tenda:blue:wirelessrouter";
+ gpios = <&gpio0 13 1>;
+ };
+ 3g {
+ label = "tenda:blue:3g";
+ gpios = <&gpio0 7 1>;
+ };
+ wpsreset {
+ label = "tenda:blue:wpsreset";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ mode {
+ label = "mode";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x100>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/W306R_V20.dts b/target/linux/ramips/dts/W306R_V20.dts
new file mode 100644
index 000000000..f5b341444
--- /dev/null
+++ b/target/linux/ramips/dts/W306R_V20.dts
@@ -0,0 +1,90 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "W306R_V20", "ralink,rt3052-soc";
+ model = "Tenda W306R V2.0";
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ sys {
+ label = "w306r-v20:green:sys";
+ gpios = <&gpio0 9 1>;
+ };
+ wps {
+ label = "w306r-v20:green:wps";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "RESET/WPS";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/W502U.dts b/target/linux/ramips/dts/W502U.dts
new file mode 100644
index 000000000..89ddc7940
--- /dev/null
+++ b/target/linux/ramips/dts/W502U.dts
@@ -0,0 +1,103 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "W502U", "ralink,rt3052-soc";
+ model = "ALFA Networks W502U";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ usb {
+ label = "alfa:blue:usb";
+ gpios = <&gpio0 13 1>;
+ };
+ wps {
+ label = "alfa:blue:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WCR150GN.dts b/target/linux/ramips/dts/WCR150GN.dts
new file mode 100644
index 000000000..380af7d55
--- /dev/null
+++ b/target/linux/ramips/dts/WCR150GN.dts
@@ -0,0 +1,99 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WCR150GN", "ralink,rt3052-soc";
+ model = "Sparklan WCR-150GN";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ user {
+ label = "wcr150gn:amber:user";
+ gpios = <&gpio0 12 1>;
+ };
+ power {
+ label = "wcr150gn:amber:power";
+ gpios = <&gpio0 8 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x211>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WHR-G300N.dts b/target/linux/ramips/dts/WHR-G300N.dts
new file mode 100644
index 000000000..bd18f4cdf
--- /dev/null
+++ b/target/linux/ramips/dts/WHR-G300N.dts
@@ -0,0 +1,86 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WHR-G300N", "ralink,rt3052-soc";
+ model = "Buffalo WHR-G300N";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ diag {
+ label = "whr-g300n:red:diag";
+ gpios = <&gpio0 7 1>;
+ };
+ router {
+ label = "whr-g300n:green:router";
+ gpios = <&gpio0 9 1>;
+ };
+ security {
+ label = "whr-g300n:amber:security";
+ gpios = <&gpio0 14 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ aoss {
+ label = "aoss";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ router-off {
+ label = "router-off";
+ gpios = <&gpio0 11 1>;
+ linux,code = <0x102>;
+ };
+ router-on {
+ label = "router-on";
+ gpios = <&gpio0 8 1>;
+ linux,code = <0x103>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WL-351.dts b/target/linux/ramips/dts/WL-351.dts
new file mode 100644
index 000000000..f9e0595f1
--- /dev/null
+++ b/target/linux/ramips/dts/WL-351.dts
@@ -0,0 +1,119 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WL-351", "ralink,rt3052-soc";
+ model = "Sitecom WL-351 v1 002";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "i2c", "spi", "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3f>;
+ ralink,fct2 = <0x0002500c>;
+ /*
+ * ext phy base addr 31, rx/tx clock skew 0,
+ * turbo mii off, rgmi 3.3v off, port 5 polling off
+ * port5: enabled, gige, full-duplex, rx/tx-flow-control
+ * port6: enabled, gige, full-duplex, rx/tx-flow-control
+ */
+ ralink,fpa2 = <0x1f003fff>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power {
+ label = "wl-351:amber:power";
+ gpios = <&gpio0 8 1>;
+ };
+ unpopulated {
+ label = "wl-351:amber:unpopulated";
+ gpios = <&gpio0 12 1>;
+ };
+ unpopulated2 {
+ label = "wl-351:blue:unpopulated";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ rtl8366rb {
+ compatible = "rtl8367rb";
+ gpio-sda = <&gpio0 1 0>;
+ gpio-sck = <&gpio0 2 0>;
+ };
+};
diff --git a/target/linux/ramips/dts/WL341V3.dts b/target/linux/ramips/dts/WL341V3.dts
new file mode 100644
index 000000000..09ef84495
--- /dev/null
+++ b/target/linux/ramips/dts/WL341V3.dts
@@ -0,0 +1,119 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WL341V3", "ralink,rt3052-soc";
+ model = "Sitecom WL-341 v3";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x20000>;
+ read-only;
+ };
+
+ partition@20000 {
+ label = "board-nvram";
+ reg = <0x20000 0x10000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "firmware";
+ reg = <0x40000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ first {
+ label = "wl341v3:amber:first";
+ gpios = <&gpio0 9 1>;
+ };
+ first2 {
+ label = "wl341v3:blue:first";
+ gpios = <&gpio0 13 1>;
+ };
+ third {
+ label = "wl341v3:amber:third";
+ gpios = <&gpio0 11 1>;
+ };
+ third2 {
+ label = "wl341v3:blue:third";
+ gpios = <&gpio0 14 1>;
+ };
+ fourth {
+ label = "wl341v3:blue:fourth";
+ gpios = <&gpio0 10 1>;
+ };
+ fifth {
+ label = "wl341v3:amber:fifth";
+ gpios = <&gpio0 12 1>;
+ };
+ fifth2 {
+ label = "wl341v3:blue:fifth";
+ gpios = <&gpio0 8 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 5 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WLI-TX4-AG300N.dts b/target/linux/ramips/dts/WLI-TX4-AG300N.dts
new file mode 100644
index 000000000..ff33a8a4d
--- /dev/null
+++ b/target/linux/ramips/dts/WLI-TX4-AG300N.dts
@@ -0,0 +1,101 @@
+/dts-v1/;
+
+/include/ "rt2880.dtsi"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "WLI-TX4-AG300N", "ralink,rt2880-soc";
+ model = "Buffalo WLI-TX4-AG300N";
+
+ palmbus@300000 {
+ sysc@0 {
+ ralink,pinmux = "uartlite";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "uboot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+ partition@30000 {
+ label = "uboot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+ partition@40000 {
+ label = "calibration";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+ partition@50000 {
+ label = "linux";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@400000 {
+ status = "okay";
+
+ ralink,fixed-link = <100 1 1 1>;
+ };
+
+ wmac@480000 {
+ status = "okay";
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ bandwidth {
+ label = "bandwidth";
+ gpios = <&gpio0 8 0>;
+ linux,code = <0x198>;
+ };
+ reset {
+ label = "reset";
+ gpios = <&gpio0 9 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+
+ diag {
+ label = "buffalo:red:diag";
+ gpios = <&gpio0 10 1>;
+ };
+ power {
+ label = "buffalo:blue:power";
+ gpios = <&gpio0 12 1>;
+ };
+ security {
+ label = "buffalo:blue:security";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/WL_330N.dts b/target/linux/ramips/dts/WL_330N.dts
new file mode 100644
index 000000000..4ffced1ba
--- /dev/null
+++ b/target/linux/ramips/dts/WL_330N.dts
@@ -0,0 +1,97 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WL_330N", "ralink,rt3050-soc";
+ model = "Asus WL-330N";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ link {
+ label = "asus:blue:link";
+ gpios = <&gpio0 9 1>;
+ };
+ power {
+ label = "asus:blue:power";
+ gpios = <&gpio0 11 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WL_330N3G.dts b/target/linux/ramips/dts/WL_330N3G.dts
new file mode 100644
index 000000000..04a46237b
--- /dev/null
+++ b/target/linux/ramips/dts/WL_330N3G.dts
@@ -0,0 +1,105 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WL_330N3G", "ralink,rt3050-soc";
+ model = "Asus WL-330N3G";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ 3g {
+ label = "asus:blue:3g";
+ gpios = <&gpio0 9 1>;
+ };
+ 3g2 {
+ label = "asus:red:3g";
+ gpios = <&gpio0 13 1>;
+ };
+ power {
+ label = "asus:blue:power";
+ gpios = <&gpio0 11 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WNCE2001.dts b/target/linux/ramips/dts/WNCE2001.dts
new file mode 100644
index 000000000..d7ad3aae9
--- /dev/null
+++ b/target/linux/ramips/dts/WNCE2001.dts
@@ -0,0 +1,138 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "WNCE2001", "ralink,rt3052-soc";
+ model = "Netgear WNCE2001";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "spi", "uartlite", "jtag", "sdram";
+ ralink,gpiomux = "i2c", "mdio", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ spi@b00 {
+ status = "okay";
+ m25p80@0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mx25l3205d";
+ reg = <0 0>;
+ linux,modalias = "m25p80", "mx25l3205d";
+ spi-max-frequency = <10000000>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ factory: partition@30000 {
+ label = "factory";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "config";
+ reg = <0x40000 0x20000>;
+ read-only;
+ };
+
+ partition@60000 {
+ label = "language";
+ reg = <0x60000 0x30000>;
+ read-only;
+ };
+
+ partition@90000 {
+ label = "pot";
+ reg = <0x90000 0x10000>;
+ read-only;
+ };
+
+ partition@a0000 {
+ label = "checksum";
+ reg = <0xa0000 0x10000>;
+ };
+
+ partition@b0000 {
+ label = "firmware";
+ reg = <0xb0000 0x350000>;
+ };
+ };
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ power-green {
+ label = "netgear:green:power";
+ gpios = <&gpio0 8 1>;
+ };
+ power-red {
+ label = "netgear:red:power";
+ gpios = <&gpio0 9 1>;
+ };
+ wlan-green {
+ label = "netgear:green:wlan";
+ gpios = <&gpio0 12 0>;
+ };
+ wlan-red {
+ label = "netgear:red:wlan";
+ gpios = <&gpio0 13 0>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ rt {
+ label = "rt";
+ gpios = <&gpio0 11 1>;
+ linux,code = <0x100>;
+ };
+ ap {
+ label = "ap";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x101>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/WR512-3GN-4M.dts b/target/linux/ramips/dts/WR512-3GN-4M.dts
new file mode 100644
index 000000000..cef7464d4
--- /dev/null
+++ b/target/linux/ramips/dts/WR512-3GN-4M.dts
@@ -0,0 +1,112 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WR512-3GN", "ralink,rt3052-soc";
+ model = "WR512-3GN-like router";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3c8000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ 3g {
+ label = "wr512:green:3g";
+ gpios = <&gpio0 9 1>;
+ };
+ gateway {
+ label = "wr512:green:gateway";
+ gpios = <&gpio0 11 1>;
+ };
+ ap {
+ label = "wr512:green:ap";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "wr512:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ station {
+ label = "wr512:green:station";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset_wps {
+ label = "reset_wps";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ mode {
+ label = "mode";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x32>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WR512-3GN-8M.dts b/target/linux/ramips/dts/WR512-3GN-8M.dts
new file mode 100644
index 000000000..9325dbb87
--- /dev/null
+++ b/target/linux/ramips/dts/WR512-3GN-8M.dts
@@ -0,0 +1,112 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WR512-3GN", "ralink,rt3052-soc";
+ model = "WR512-3GN-like router";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x2f>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ 3g {
+ label = "wr512:green:3g";
+ gpios = <&gpio0 9 1>;
+ };
+ gateway {
+ label = "wr512:green:gateway";
+ gpios = <&gpio0 11 1>;
+ };
+ ap {
+ label = "wr512:green:ap";
+ gpios = <&gpio0 12 1>;
+ };
+ wps {
+ label = "wr512:green:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ station {
+ label = "wr512:green:station";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset_wps {
+ label = "reset_wps";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ mode {
+ label = "mode";
+ gpios = <&gpio0 7 1>;
+ linux,code = <0x32>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/WR6202.dts b/target/linux/ramips/dts/WR6202.dts
new file mode 100644
index 000000000..a970849e3
--- /dev/null
+++ b/target/linux/ramips/dts/WR6202.dts
@@ -0,0 +1,115 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "WR6202", "ralink,rt3052-soc";
+ model = "AWB WR6202";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ };
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "mdio", "sdram", "rgmii";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wps {
+ label = "wr6202:blue:wps";
+ gpios = <&gpio0 14 1>;
+ };
+ 3g {
+ label = "wr6202:blue:3g";
+ gpios = <&gpio0 13 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 10 1>;
+ linux,code = <0x198>;
+ };
+ wps {
+ label = "wps";
+ gpios = <&gpio0 0 1>;
+ linux,code = <0x211>;
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x7b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+
+ gpio_export {
+ compatible = "gpio-export";
+ #size-cells = <0>;
+
+ usb {
+ gpio-export,name = "usb";
+ gpio-export,output = <0>;
+ gpios = <&gpio0 11 0>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/XDXRN502J.dts b/target/linux/ramips/dts/XDXRN502J.dts
new file mode 100644
index 000000000..3df097cde
--- /dev/null
+++ b/target/linux/ramips/dts/XDXRN502J.dts
@@ -0,0 +1,95 @@
+/dts-v1/;
+
+/include/ "rt3050.dtsi"
+
+/ {
+ compatible = "XDXRN502J", "ralink,rt3052-soc";
+ model = "XDX RN502J";
+
+ palmbus@10000000 {
+ sysc@0 {
+ ralink,pinmux = "i2c", "spi", "uartlite", "jtag", "sdram", "rgmii";
+ ralink,gpiomux = "mdio";
+ ralink,uartmux = "gpio";
+ ralink,wdtmux = <1>;
+ };
+
+ gpio0: gpio@600 {
+ status = "okay";
+ };
+ };
+
+ cfi@1f000000 {
+ compatible = "cfi-flash";
+ reg = <0x1f000000 0x800000>;
+
+ bank-width = <2>;
+ device-width = <2>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0x30000>;
+ read-only;
+ };
+
+ partition@30000 {
+ label = "u-boot-env";
+ reg = <0x30000 0x10000>;
+ read-only;
+ };
+
+ factory: partition@40000 {
+ label = "factory";
+ reg = <0x40000 0x10000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x50000 0x3b0000>;
+ };
+ };
+
+ ethernet@10100000 {
+ status = "okay";
+ };
+
+ esw@10110000 {
+ status = "okay";
+ ralink,portmap = <0x3e>;
+ };
+
+ gpio-leds {
+ compatible = "gpio-leds";
+ wifi {
+ label = "xdxrn502j:green:wifi";
+ gpios = <&gpio0 7 1>;
+ };
+ power {
+ label = "xdxrn502j:green:power";
+ gpios = <&gpio0 9 1>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <20>;
+ reset {
+ label = "reset";
+ gpios = <&gpio0 12 1>;
+ linux,code = <0x198>;
+ };
+ };
+
+ wmac@10180000 {
+ status = "okay";
+ };
+
+ otg@101c0000 {
+ status = "okay";
+ };
+};
diff --git a/target/linux/ramips/dts/mt7620.dtsi b/target/linux/ramips/dts/mt7620.dtsi
new file mode 100644
index 000000000..9f913cd85
--- /dev/null
+++ b/target/linux/ramips/dts/mt7620.dtsi
@@ -0,0 +1,140 @@
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "ralink,mtk7620n-soc", "ralink,mt7620-soc";
+
+ cpus {
+ cpu@0 {
+ compatible = "mips,mips24KEc";
+ };
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,57600";
+ };
+
+ cpuintc: cpuintc@0 {
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "mti,cpu-interrupt-controller";
+ };
+
+ palmbus@10000000 {
+ compatible = "palmbus";
+ reg = <0x10000000 0x200000>;
+ ranges = <0x0 0x10000000 0x1FFFFF>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ sysc@0 {
+ compatible = "ralink,mt7620-sysc", "ralink,mt7620n-sysc";
+ reg = <0x0 0x100>;
+ };
+
+ timer@100 {
+ compatible = "ralink,mt7620-timer", "ralink,rt2880-timer";
+ reg = <0x100 0x20>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <1>;
+ };
+
+ watchdog@120 {
+ compatible = "ralink,mt7620-wdt", "ralink,rt2880-wdt";
+ reg = <0x120 0x10>;
+ };
+
+ intc: intc@200 {
+ compatible = "ralink,mt7620-intc", "ralink,rt2880-intc";
+ reg = <0x200 0x100>;
+
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <2>;
+ };
+
+ memc@300 {
+ compatible = "ralink,mt7620-memc", "ralink,rt3050-memc";
+ reg = <0x300 0x100>;
+ };
+
+ gpio0: gpio@600 {
+ compatible = "ralink,mt7620-gpio", "ralink,rt2880-gpio";
+ reg = <0x600 0x34>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <0>;
+ ralink,num-gpios = <24>;
+ ralink,register-map = [ 00 04 08 0c
+ 20 24 28 2c
+ 30 34 ];
+ };
+
+ gpio1: gpio@638 {
+ compatible = "ralink,mt7620-gpio", "ralink,rt2880-gpio";
+ reg = <0x638 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <24>;
+ ralink,num-gpios = <16>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+ };
+
+ gpio2: gpio@660 {
+ compatible = "ralink,mt7620-gpio", "ralink,rt2880-gpio";
+ reg = <0x660 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <40>;
+ ralink,num-gpios = <32>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+ };
+
+ gpio3: gpio@688 {
+ compatible = "ralink,mt7620-gpio", "ralink,rt2880-gpio";
+ reg = <0x688 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <72>;
+ ralink,num-gpios = <1>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+ };
+
+ spi@b00 {
+ compatible = "ralink,rt3883-spi", "ralink,rt2880-spi";
+ reg = <0xb00 0x100>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+ };
+
+ uartlite@c00 {
+ compatible = "ralink,mt7620-uart", "ralink,rt2880-uart", "ns16550a";
+ reg = <0xc00 0x100>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <12>;
+
+ reg-shift = <2>;
+ };
+ };
+};
diff --git a/target/linux/ramips/dts/rt2880.dtsi b/target/linux/ramips/dts/rt2880.dtsi
new file mode 100644
index 000000000..637409f35
--- /dev/null
+++ b/target/linux/ramips/dts/rt2880.dtsi
@@ -0,0 +1,157 @@
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "ralink,rt2880-soc";
+
+ cpus {
+ cpu@0 {
+ compatible = "mips,mips24KEc";
+ };
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,57600";
+ };
+
+ memorydetect {
+ ralink,memory = <0x8000000 0x200000 0x8000000>;
+ };
+
+ cpuintc: cpuintc@0 {
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "mti,cpu-interrupt-controller";
+ };
+
+ palmbus@300000 {
+ compatible = "palmbus";
+ reg = <0x300000 0x200000>;
+ ranges = <0x0 0x300000 0x1FFFFF>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ sysc@0 {
+ compatible = "ralink,rt2880-sysc";
+ reg = <0x000 0x100>;
+ };
+
+ timer@100 {
+ compatible = "ralink,rt2880-timer";
+ reg = <0x100 0x20>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <1>;
+
+ status = "disabled";
+ };
+
+ watchdog@120 {
+ compatible = "ralink,rt2880-wdt";
+ reg = <0x120 0x10>;
+ };
+
+ intc: intc@200 {
+ compatible = "ralink,rt2880-intc";
+ reg = <0x200 0x100>;
+
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <2>;
+ };
+
+ memc@300 {
+ compatible = "ralink,rt2880-memc";
+ reg = <0x300 0x100>;
+ };
+
+ gpio0: gpio@600 {
+ compatible = "ralink,rt2880-gpio";
+ reg = <0x600 0x34>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <0>;
+ ralink,num-gpios = <24>;
+ ralink,register-map = [ 00 04 08 0c
+ 20 24 28 2c
+ 30 34 ];
+ };
+
+ gpio1: gpio@638 {
+ compatible = "ralink,rt2880-gpio";
+ reg = <0x638 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <24>;
+ ralink,num-gpios = <16>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ gpio2: gpio@660 {
+ compatible = "ralink,rt2880-gpio";
+ reg = <0x660 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <40>;
+ ralink,num-gpios = <32>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ uartlite@c00 {
+ compatible = "ralink,rt2880-uart", "ns16550a";
+ reg = <0xc00 0x100>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <8>;
+
+ reg-shift = <2>;
+ };
+ };
+
+ ethernet@400000 {
+ compatible = "ralink,rt2880-eth";
+ reg = <0x00400000 10000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <5>;
+
+ status = "disabled";
+
+ mdio-bus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+ };
+ };
+
+ wmac@480000 {
+ compatible = "ralink,rt2880-wmac";
+ reg = <0x480000 40000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <6>;
+
+ ralink,eeprom = "soc_wmac.eeprom";
+
+ status = "disabled";
+ };
+
+};
diff --git a/target/linux/ramips/dts/rt3050.dtsi b/target/linux/ramips/dts/rt3050.dtsi
new file mode 100644
index 000000000..45d923853
--- /dev/null
+++ b/target/linux/ramips/dts/rt3050.dtsi
@@ -0,0 +1,179 @@
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "ralink,rt3050-soc", "ralink,rt3052-soc", "ralink,rt3350-soc";
+
+ cpus {
+ cpu@0 {
+ compatible = "mips,mips24KEc";
+ };
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,57600";
+ };
+
+ memorydetect {
+ ralink,memory = <0x0 0x200000 0x4000000>;
+ };
+
+ cpuintc: cpuintc@0 {
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "mti,cpu-interrupt-controller";
+ };
+
+ palmbus@10000000 {
+ compatible = "palmbus";
+ reg = <0x10000000 0x200000>;
+ ranges = <0x0 0x10000000 0x1FFFFF>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ sysc@0 {
+ compatible = "ralink,rt3052-sysc", "ralink,rt3050-sysc";
+ reg = <0x0 0x100>;
+ };
+
+ timer@100 {
+ compatible = "ralink,rt3052-timer", "ralink,rt2880-timer";
+ reg = <0x100 0x20>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <1>;
+ };
+
+ watchdog@120 {
+ compatible = "ralink,rt3052-wdt", "ralink,rt2880-wdt";
+ reg = <0x120 0x10>;
+ };
+
+ intc: intc@200 {
+ compatible = "ralink,rt3052-intc", "ralink,rt2880-intc";
+ reg = <0x200 0x100>;
+
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <2>;
+ };
+
+ memc@300 {
+ compatible = "ralink,rt3052-memc", "ralink,rt3050-memc";
+ reg = <0x300 0x100>;
+ };
+
+ gpio0: gpio@600 {
+ compatible = "ralink,rt3052-gpio", "ralink,rt2880-gpio";
+ reg = <0x600 0x34>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <0>;
+ ralink,num-gpios = <24>;
+ ralink,register-map = [ 00 04 08 0c
+ 20 24 28 2c
+ 30 34 ];
+
+ status = "disabled";
+ };
+
+ gpio1: gpio@638 {
+ compatible = "ralink,rt3052-gpio", "ralink,rt2880-gpio";
+ reg = <0x638 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <24>;
+ ralink,num-gpios = <16>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ gpio2: gpio@660 {
+ compatible = "ralink,rt3052-gpio", "ralink,rt2880-gpio";
+ reg = <0x660 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <40>;
+ ralink,num-gpios = <12>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ spi@b00 {
+ compatible = "ralink,rt3050-spi", "ralink,rt2880-spi";
+ reg = <0xb00 0x100>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+ };
+
+ uartlite@c00 {
+ compatible = "ralink,rt3052-uart", "ralink,rt2880-uart", "ns16550a";
+ reg = <0xc00 0x100>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <12>;
+
+ reg-shift = <2>;
+ };
+
+ };
+
+ ethernet@10100000 {
+ compatible = "ralink,rt3050-eth";
+ reg = <0x10100000 10000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <5>;
+
+ status = "disabled";
+ };
+
+ esw@10110000 {
+ compatible = "ralink,rt3050-esw";
+ reg = <0x10110000 8000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <17>;
+
+ status = "disabled";
+ };
+
+ wmac@10180000 {
+ compatible = "ralink,rt3050-wmac", "ralink,rt2880-wmac";
+ reg = <0x10180000 40000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <6>;
+
+ ralink,eeprom = "soc_wmac.eeprom";
+
+ status = "disabled";
+ };
+
+ otg@101c0000 {
+ compatible = "ralink,rt3050-otg";
+ reg = <0x101c0000 40000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <18>;
+
+ status = "disabled";
+ };
+};
diff --git a/target/linux/ramips/dts/rt3352.dtsi b/target/linux/ramips/dts/rt3352.dtsi
new file mode 100644
index 000000000..9c7c268b8
--- /dev/null
+++ b/target/linux/ramips/dts/rt3352.dtsi
@@ -0,0 +1,188 @@
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "ralink,rt3352-soc";
+
+ cpus {
+ cpu@0 {
+ compatible = "mips,mips24KEc";
+ };
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,57600";
+ };
+
+ memorydetect {
+ ralink,memory = <0x0 0x200000 0x10000000>;
+ };
+
+ cpuintc: cpuintc@0 {
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "mti,cpu-interrupt-controller";
+ };
+
+ palmbus@10000000 {
+ compatible = "palmbus";
+ reg = <0x10000000 0x200000>;
+ ranges = <0x0 0x10000000 0x1FFFFF>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ sysc@0 {
+ compatible = "ralink,rt3352-sysc", "ralink,rt3050-sysc";
+ reg = <0x0 0x100>;
+ };
+
+ timer@100 {
+ compatible = "ralink,rt3352-timer", "ralink,rt2880-timer";
+ reg = <0x100 0x20>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <1>;
+ };
+
+ watchdog@120 {
+ compatible = "ralink,rt3352-wdt", "ralink,rt2880-wdt";
+ reg = <0x120 0x10>;
+ };
+
+ intc: intc@200 {
+ compatible = "ralink,rt3352-intc", "ralink,rt2880-intc";
+ reg = <0x200 0x100>;
+
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <2>;
+ };
+
+ memc@300 {
+ compatible = "ralink,rt3352-memc", "ralink,rt3050-memc";
+ reg = <0x300 0x100>;
+ };
+
+ gpio0: gpio@600 {
+ compatible = "ralink,rt3352-gpio", "ralink,rt2880-gpio";
+ reg = <0x600 0x34>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <0>;
+ ralink,num-gpios = <24>;
+ ralink,register-map = [ 00 04 08 0c
+ 20 24 28 2c
+ 30 34 ];
+
+ status = "disabled";
+ };
+
+ gpio1: gpio@638 {
+ compatible = "ralink,rt3352-gpio", "ralink,rt2880-gpio";
+ reg = <0x638 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <24>;
+ ralink,num-gpios = <16>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ gpio2: gpio@660 {
+ compatible = "ralink,rt3352-gpio", "ralink,rt2880-gpio";
+ reg = <0x660 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <40>;
+ ralink,num-gpios = <12>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ spi@b00 {
+ compatible = "ralink,rt3352-spi", "ralink,rt2880-spi";
+ reg = <0xb00 0x100>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ status = "disabled";
+ };
+
+ uartlite@c00 {
+ compatible = "ralink,rt3352-uart", "ralink,rt2880-uart", "ns16550a";
+ reg = <0xc00 0x100>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <12>;
+
+ reg-shift = <2>;
+ };
+ };
+
+ ethernet@10100000 {
+ compatible = "ralink,rt3352-eth", "ralink,rt3050-eth";
+ reg = <0x10100000 10000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <5>;
+
+ status = "disabled";
+ };
+
+ esw@10110000 {
+ compatible = "ralink,rt3352-esw", "ralink,rt3050-esw";
+ reg = <0x10110000 8000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <17>;
+
+ status = "disabled";
+ };
+
+ wmac@10180000 {
+ compatible = "ralink,rt3352-wmac", "ralink,rt2880-wmac";
+ reg = <0x10180000 40000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <6>;
+
+ ralink,eeprom = "soc_wmac.eeprom";
+
+ status = "disabled";
+ };
+
+ ehci@101c0000 {
+ compatible = "ralink,rt3352-ehci", "ehci-platform";
+ reg = <0x101c0000 0x1000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <18>;
+
+ status = "disabled";
+ };
+
+ ohci@101c1000 {
+ compatible = "ralink,rt3352-ohci", "ohci-platform";
+ reg = <0x101c1000 0x1000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <18>;
+
+ status = "disabled";
+ };
+};
diff --git a/target/linux/ramips/dts/rt3883.dtsi b/target/linux/ramips/dts/rt3883.dtsi
new file mode 100644
index 000000000..6f824d5e8
--- /dev/null
+++ b/target/linux/ramips/dts/rt3883.dtsi
@@ -0,0 +1,291 @@
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "ralink,rt3883-soc";
+
+ cpus {
+ cpu@0 {
+ compatible = "mips,mips74Kc";
+ };
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,57600";
+ };
+
+ aliases {
+ spi0 = &spi0;
+ };
+
+ memorydetect {
+ ralink,memory = <0x0 0x200000 0x10000000>;
+ };
+
+ cpuintc: cpuintc@0 {
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "mti,cpu-interrupt-controller";
+ };
+
+ palmbus@10000000 {
+ compatible = "palmbus";
+ reg = <0x10000000 0x200000>;
+ ranges = <0x0 0x10000000 0x1FFFFF>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ sysc@0 {
+ compatible = "ralink,rt3883-sysc", "ralink,rt3050-sysc";
+ reg = <0x0 0x100>;
+ };
+
+ timer@100 {
+ compatible = "ralink,rt3883-timer", "ralink,rt2880-timer";
+ reg = <0x100 0x20>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <1>;
+ };
+
+ watchdog@120 {
+ compatible = "ralink,rt3883-wdt", "ralink,rt2880-wdt";
+ reg = <0x120 0x10>;
+ };
+
+ intc: intc@200 {
+ compatible = "ralink,rt3883-intc", "ralink,rt2880-intc";
+ reg = <0x200 0x100>;
+
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <2>;
+ };
+
+ memc@300 {
+ compatible = "ralink,rt3883-memc", "ralink,rt3050-memc";
+ reg = <0x300 0x100>;
+ };
+
+ gpio0: gpio@600 {
+ compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
+ reg = <0x600 0x34>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <0>;
+ ralink,num-gpios = <24>;
+ ralink,register-map = [ 00 04 08 0c
+ 20 24 28 2c
+ 30 34 ];
+
+ status = "disabled";
+ };
+
+ gpio1: gpio@638 {
+ compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
+ reg = <0x638 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <24>;
+ ralink,num-gpios = <16>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ gpio2: gpio@660 {
+ compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
+ reg = <0x660 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <40>;
+ ralink,num-gpios = <32>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ gpio3: gpio@688 {
+ compatible = "ralink,rt3883-gpio", "ralink,rt2880-gpio";
+ reg = <0x688 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <72>;
+ ralink,num-gpios = <24>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ spi0: spi@b00 {
+ compatible = "ralink,rt3883-spi", "ralink,rt2880-spi";
+ reg = <0xb00 0x100>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+ };
+
+ uartlite@c00 {
+ compatible = "ralink,rt3883-uart", "ralink,rt2880-uart", "ns16550a";
+ reg = <0xc00 0x100>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <12>;
+
+ reg-shift = <2>;
+ };
+ };
+
+ ethernet@10100000 {
+ compatible = "ralink,rt3883-eth";
+ reg = <0x10100000 10000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <5>;
+
+ status = "disabled";
+
+ mdio-bus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "disabled";
+ };
+ };
+
+ pci@10140000 {
+ compatible = "ralink,rt3883-pci";
+ reg = <0x10140000 0x20000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges; /* direct mapping */
+
+ status = "disabled";
+
+ pciintc: interrupt-controller {
+ interrupt-controller;
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <4>;
+ };
+
+ host-bridge {
+ #address-cells = <3>;
+ #size-cells = <2>;
+ #interrupt-cells = <1>;
+
+ device_type = "pci";
+
+ bus-range = <0 255>;
+ ranges = <
+ 0x02000000 0 0x00000000 0x20000000 0 0x10000000 /* pci memory */
+ 0x01000000 0 0x00000000 0x10160000 0 0x00010000 /* io space */
+ >;
+
+ interrupt-map-mask = <0xf800 0 0 7>;
+ interrupt-map = <
+ /* IDSEL 17 */
+ 0x8800 0 0 1 &pciintc 18
+ 0x8800 0 0 2 &pciintc 18
+ 0x8800 0 0 3 &pciintc 18
+ 0x8800 0 0 4 &pciintc 18
+ /* IDSEL 18 */
+ 0x9000 0 0 1 &pciintc 19
+ 0x9000 0 0 2 &pciintc 19
+ 0x9000 0 0 3 &pciintc 19
+ 0x9000 0 0 4 &pciintc 19
+ >;
+
+ pci-bridge@1 {
+ reg = <0x0800 0 0 0 0>;
+ device_type = "pci";
+ #interrupt-cells = <1>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+
+ status = "disabled";
+
+ ralink,pci-slot = <1>;
+
+ interrupt-map-mask = <0x0 0 0 0>;
+ interrupt-map = <0x0 0 0 0 &pciintc 20>;
+ };
+
+ pci-slot@17 {
+ reg = <0x8800 0 0 0 0>;
+ device_type = "pci";
+ #interrupt-cells = <1>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+
+ ralink,pci-slot = <17>;
+
+ status = "disabled";
+ };
+
+ pci-slot@18 {
+ reg = <0x9000 0 0 0 0>;
+ device_type = "pci";
+ #interrupt-cells = <1>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+
+ ralink,pci-slot = <18>;
+
+ status = "disabled";
+ };
+ };
+ };
+
+ wmac@10180000 {
+ compatible = "ralink,rt3883-wmac", "ralink,rt2880-wmac";
+ reg = <0x10180000 40000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <6>;
+
+ ralink,eeprom = "soc_wmac.eeprom";
+
+ status = "disabled";
+ };
+
+ ehci@101c0000 {
+ compatible = "ralink,rt3883-ehci", "ehci-platform";
+ reg = <0x101c0000 0x1000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <18>;
+
+ status = "disabled";
+ };
+
+ ohci@101c1000 {
+ compatible = "ralink,rt3883-ohci", "ohci-platform";
+ reg = <0x101c1000 0x1000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <18>;
+
+ status = "disabled";
+ };
+};
diff --git a/target/linux/ramips/dts/rt5350.dtsi b/target/linux/ramips/dts/rt5350.dtsi
new file mode 100644
index 000000000..c48d7810f
--- /dev/null
+++ b/target/linux/ramips/dts/rt5350.dtsi
@@ -0,0 +1,188 @@
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "ralink,rt5350-soc";
+
+ cpus {
+ cpu@0 {
+ compatible = "mips,mips24KEc";
+ };
+ };
+
+ chosen {
+ bootargs = "console=ttyS0,57600";
+ };
+
+ memorydetect {
+ ralink,memory = <0x0 0x200000 0x4000000>;
+ };
+
+ cpuintc: cpuintc@0 {
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ interrupt-controller;
+ compatible = "mti,cpu-interrupt-controller";
+ };
+
+ palmbus@10000000 {
+ compatible = "palmbus";
+ reg = <0x10000000 0x200000>;
+ ranges = <0x0 0x10000000 0x1FFFFF>;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ sysc@0 {
+ compatible = "ralink,rt5350-sysc", "ralink,rt3050-sysc";
+ reg = <0x0 0x100>;
+ };
+
+ timer@100 {
+ compatible = "ralink,rt5350-timer", "ralink,rt2880-timer";
+ reg = <0x100 0x20>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <1>;
+ };
+
+ watchdog@120 {
+ compatible = "ralink,rt5350-wdt", "ralink,rt2880-wdt";
+ reg = <0x120 0x10>;
+ };
+
+ intc: intc@200 {
+ compatible = "ralink,rt5350-intc", "ralink,rt2880-intc";
+ reg = <0x200 0x100>;
+
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <2>;
+ };
+
+ memc@300 {
+ compatible = "ralink,rt5350-memc", "ralink,rt3050-memc";
+ reg = <0x300 0x100>;
+ };
+
+ gpio0: gpio@600 {
+ compatible = "ralink,rt5350-gpio", "ralink,rt2880-gpio";
+ reg = <0x600 0x34>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <0>;
+ ralink,num-gpios = <24>;
+ ralink,register-map = [ 00 04 08 0c
+ 20 24 28 2c
+ 30 34 ];
+
+ status = "disabled";
+ };
+
+ gpio1: gpio@638 {
+ compatible = "ralink,rt5350-gpio", "ralink,rt2880-gpio";
+ reg = <0x638 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <24>;
+ ralink,num-gpios = <16>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ gpio2: gpio@660 {
+ compatible = "ralink,rt5350-gpio", "ralink,rt2880-gpio";
+ reg = <0x660 0x24>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+
+ ralink,gpio-base = <40>;
+ ralink,num-gpios = <12>;
+ ralink,register-map = [ 00 04 08 0c
+ 10 14 18 1c
+ 20 24 ];
+
+ status = "disabled";
+ };
+
+ spi@b00 {
+ compatible = "ralink,rt5350-spi", "ralink,rt2880-spi";
+ reg = <0xb00 0x100>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ status = "disabled";
+ };
+
+ uartlite@c00 {
+ compatible = "ralink,rt5350-uart", "ralink,rt2880-uart", "ns16550a";
+ reg = <0xc00 0x100>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <12>;
+
+ reg-shift = <2>;
+ };
+ };
+
+ ethernet@10100000 {
+ compatible = "ralink,rt5350-eth", "ralink,rt3050-eth";
+ reg = <0x10100000 10000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <5>;
+
+ status = "disabled";
+ };
+
+ esw@10110000 {
+ compatible = "ralink,rt5350-esw", "ralink,rt3050-esw";
+ reg = <0x10110000 8000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <17>;
+
+ status = "disabled";
+ };
+
+ wmac@10180000 {
+ compatible = "ralink,rt5350-wmac", "ralink,rt2880-wmac";
+ reg = <0x10180000 40000>;
+
+ interrupt-parent = <&cpuintc>;
+ interrupts = <6>;
+
+ ralink,eeprom = "soc_wmac.eeprom";
+
+ status = "disabled";
+ };
+
+ ehci@101c0000 {
+ compatible = "ralink,rt5350-ehci", "ehci-platform";
+ reg = <0x101c0000 0x1000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <18>;
+
+ status = "disabled";
+ };
+
+ ohci@101c1000 {
+ compatible = "ralink,rt5350-ohci", "ohci-platform";
+ reg = <0x101c1000 0x1000>;
+
+ interrupt-parent = <&intc>;
+ interrupts = <18>;
+
+ status = "disabled";
+ };
+};