ramips: add support for Asus RT-N10P V3 / RT-N11P B1 / RT-N12 VP B1
authorErnst Spielmann <endspiel@disroot.org>
Thu, 16 Apr 2020 18:42:29 +0000 (18:42 +0000)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Sun, 24 May 2020 16:14:59 +0000 (18:14 +0200)
Specifications:

- MT7628NN @ 580 MHz
- 32 MB RAM
- 8 MB Flash
- 5x 10/100 Mbps Ethernet (built-in switch)
- 2.4 GHz WLAN
- 2x external, non-detachable antennas (1x for RT-N10P V3)

Flash instructions:

1. Set PC network interface to 192.168.1.75/24.
2. Connect PC to the router via LAN.
3. Turn router off, press and hold reset button, then turn it on.
4. Keep the button pressed till power led starts to blink.
5. Upload the firmware file via TFTP. (Any filename is accepted.)
6. Wait until the router reboots.

Signed-off-by: Ernst Spielmann <endspiel@disroot.org>
[fix node/property name for state_default]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts [new file with mode: 0644]
target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts [new file with mode: 0644]
target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts [new file with mode: 0644]
target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi [new file with mode: 0644]
target/linux/ramips/image/mt76x8.mk
target/linux/ramips/mt76x8/base-files/etc/board.d/01_leds
target/linux/ramips/mt76x8/base-files/etc/board.d/02_network

diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts b/target/linux/ramips/dts/mt7628an_asus_rt-n10p-v3.dts
new file mode 100644 (file)
index 0000000..eaf5796
--- /dev/null
@@ -0,0 +1,34 @@
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+#include "mt7628an_asus_rt-n1x.dtsi"
+
+/ {
+       compatible = "asus,rt-n10p-v3", "mediatek,mt7628an-soc";
+       model = "Asus RT-N10P V3";
+
+       leds {
+               compatible = "gpio-leds";
+
+               led_power: power {
+                       label = "rt-n10p-v3:green:power";
+                       gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
+               };
+
+               wlan {
+                       label = "rt-n10p-v3:green:wlan";
+                       gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "phy0tpt";
+               };
+
+               wan {
+                       label = "rt-n10p-v3:green:wan";
+                       gpios = <&gpio 43 GPIO_ACTIVE_LOW>;
+               };
+
+               lan {
+                       label = "rt-n10p-v3:green:lan";
+                       gpios = <&gpio 42 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts b/target/linux/ramips/dts/mt7628an_asus_rt-n11p-b1.dts
new file mode 100644 (file)
index 0000000..46f199f
--- /dev/null
@@ -0,0 +1,34 @@
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+#include "mt7628an_asus_rt-n1x.dtsi"
+
+/ {
+       compatible = "asus,rt-n11p-b1", "mediatek,mt7628an-soc";
+       model = "Asus RT-N11P B1";
+
+       leds {
+               compatible = "gpio-leds";
+
+               led_power: power {
+                       label = "rt-n11p-b1:green:power";
+                       gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
+               };
+
+               wlan {
+                       label = "rt-n11p-b1:green:wlan";
+                       gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "phy0tpt";
+               };
+
+               wan {
+                       label = "rt-n11p-b1:green:wan";
+                       gpios = <&gpio 43 GPIO_ACTIVE_LOW>;
+               };
+
+               lan {
+                       label = "rt-n11p-b1:green:lan";
+                       gpios = <&gpio 42 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts b/target/linux/ramips/dts/mt7628an_asus_rt-n12-vp-b1.dts
new file mode 100644 (file)
index 0000000..b6070d7
--- /dev/null
@@ -0,0 +1,34 @@
+// SPDX-License-Identifier: GPL-2.0+
+/dts-v1/;
+
+#include "mt7628an_asus_rt-n1x.dtsi"
+
+/ {
+       compatible = "asus,rt-n12-vp-b1", "mediatek,mt7628an-soc";
+       model = "Asus RT-N12 VP B1";
+
+       leds {
+               compatible = "gpio-leds";
+
+               led_power: power {
+                       label = "rt-n12-vp-b1:green:power";
+                       gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
+               };
+
+               wlan {
+                       label = "rt-n12-vp-b1:green:wlan";
+                       gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "phy0tpt";
+               };
+
+               wan {
+                       label = "rt-n12-vp-b1:green:wan";
+                       gpios = <&gpio 43 GPIO_ACTIVE_LOW>;
+               };
+
+               lan {
+                       label = "rt-n12-vp-b1:green:lan";
+                       gpios = <&gpio 42 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
diff --git a/target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi b/target/linux/ramips/dts/mt7628an_asus_rt-n1x.dtsi
new file mode 100644 (file)
index 0000000..add4e6d
--- /dev/null
@@ -0,0 +1,100 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+#include "mt7628an.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+       aliases {
+               led-boot = &led_power;
+               led-failsafe = &led_power;
+               led-running = &led_power;
+               led-upgrade = &led_power;
+       };
+
+       chosen {
+               bootargs = "console=ttyS0,57600";
+       };
+
+       keys {
+               compatible = "gpio-keys";
+
+               reset {
+                       label = "reset";
+                       gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_RESTART>;
+               };
+       };
+};
+
+&spi0 {
+       status = "okay";
+
+       flash@0 {
+               compatible = "jedec,spi-nor";
+               reg = <0>;
+               spi-max-frequency = <40000000>;
+
+               partitions {
+                       compatible = "fixed-partitions";
+                       #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 {
+                               compatible = "denx,uimage";
+                               label = "firmware";
+                               reg = <0x50000 0x7b0000>;
+                       };
+               };
+       };
+};
+
+&ethernet {
+       mtd-mac-address = <&factory 0x4>;
+};
+
+&esw {
+       mediatek,portmap = <0x2f>;
+};
+
+&wmac {
+       status = "okay";
+};
+
+&state_default {
+       gpio {
+               groups = "i2c", "p0led_an", "p1led_an", "refclk", "wled_an";
+               function = "gpio";
+       };
+};
+
+&usbphy {
+       status = "disabled";
+};
+
+&ehci {
+       status = "disabled";
+};
+
+&ohci {
+       status = "disabled";
+};
index ba8ab1b747fde982ff143804b57eb56c4d764174..16b5958ad1c0d6735e5e52a1085d6f304b949279 100644 (file)
@@ -14,6 +14,30 @@ define Device/alfa-network_awusfree1
 endef
 TARGET_DEVICES += alfa-network_awusfree1
 
+define Device/asus_rt-n10p-v3
+  IMAGE_SIZE := 7872k
+  DEVICE_VENDOR := Asus
+  DEVICE_MODEL := RT-N10P
+  DEVICE_VARIANT := V3
+endef
+TARGET_DEVICES += asus_rt-n10p-v3
+
+define Device/asus_rt-n11p-b1
+  IMAGE_SIZE := 7872k
+  DEVICE_VENDOR := Asus
+  DEVICE_MODEL := RT-N11P
+  DEVICE_VARIANT := B1
+endef
+TARGET_DEVICES += asus_rt-n11p-b1
+
+define Device/asus_rt-n12-vp-b1
+  IMAGE_SIZE := 7872k
+  DEVICE_VENDOR := Asus
+  DEVICE_MODEL := RT-N12 VP
+  DEVICE_VARIANT := B1
+endef
+TARGET_DEVICES += asus_rt-n12-vp-b1
+
 define Device/buffalo_wcr-1166ds
   IMAGE_SIZE := 7936k
   BUFFALO_TAG_PLATFORM := MTK
index c66e13d3c564b00e43187b0ed926ead48e0462a8..685895452a92a6fab4a92f6470b7eaa9df631a73 100755 (executable)
@@ -20,6 +20,12 @@ case $board in
 alfa-network,awusfree1)
        set_wifi_led "$boardname:blue:wlan"
        ;;
+asus,rt-n10p-v3|\
+asus,rt-n11p-b1|\
+asus,rt-n12-vp-b1)
+       ucidef_set_led_switch "lan" "lan" "$boardname:green:lan" "switch0" "0xf"
+       ucidef_set_led_switch "wan" "wan" "$boardname:green:wan" "switch0" "0x10"
+       ;;
 cudy,wr1000)
        ucidef_set_led_switch "wan" "wan" "$boardname:blue:wan" "switch0" "0x10"
        ucidef_set_led_switch "lan1" "lan1" "$boardname:blue:lan1" "switch0" "0x08"
index d758fe5543065b3bb14f3a0e91fb870873565e47..398b5e88c70742379d157f4fa1a4cd6d50d4d062 100755 (executable)
@@ -26,6 +26,18 @@ ramips_setup_interfaces()
                ucidef_add_switch_attr "switch0" "enable" "false"
                ucidef_set_interface_lan "eth0"
                ;;
+       asus,rt-n10p-v3|\
+       asus,rt-n11p-b1|\
+       asus,rt-n12-vp-b1|\
+       hiwifi,hc5661a|\
+       mediatek,mt7628an-eval-board|\
+       mercury,mac1200r-v2|\
+       totolink,lr1200|\
+       wavlink,wl-wn570ha1|\
+       wavlink,wl-wn575a3)
+               ucidef_add_switch "switch0" \
+                       "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
+               ;;
        buffalo,wcr-1166ds)
                ucidef_add_switch "switch0" \
                        "3:lan" "4:wan" "6@eth0"
@@ -67,15 +79,6 @@ ramips_setup_interfaces()
                ucidef_add_switch "switch0" \
                        "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "6@eth0"
                ;;
-       hiwifi,hc5661a|\
-       mediatek,mt7628an-eval-board|\
-       mercury,mac1200r-v2|\
-       totolink,lr1200|\
-       wavlink,wl-wn570ha1|\
-       wavlink,wl-wn575a3)
-               ucidef_add_switch "switch0" \
-                       "0:lan" "1:lan" "2:lan" "3:lan" "4:wan" "6@eth0"
-               ;;
        hiwifi,hc5761a)
                ucidef_add_switch "switch0" \
                        "0:lan" "1:lan" "4:wan" "6@eth0"