ramips: add support for Linksys EA8100 v1
authorTee Hao Wei <angelsl@in04.sg>
Mon, 17 May 2021 19:46:36 +0000 (03:46 +0800)
committerPetr Štetiar <ynezz@true.cz>
Thu, 10 Jun 2021 15:09:35 +0000 (17:09 +0200)
Specifications:
- SoC: MT7621AT
- RAM: 256MB
- Flash: 128MB NAND
- Ethernet: 5 Gigabit ports
- WiFi: 2.4G/5G MT7615N
- USB: 1 USB 3.0, 1 USB 2.0

This device is very similar to the EA7300 v1/v2 and EA7500 v2.

Installation:

Upload the generated factory image through the factory web interface.

(following part taken from EA7300 v2 commit message:)

This might fail due to the A/B nature of this device. When flashing, OEM
firmware writes over the non-booted partition. If booted from 'A',
flashing over 'B' won't work. To get around this, you should flash the
OEM image over itself. This will then boot the router from 'B' and
allow you to flash OpenWRT without problems.

Reverting to factory firmware:

Hard-reset the router three times to force it to boot from 'B.' This is
where the stock firmware resides. To remove any traces of OpenWRT from
your router simply flash the OEM image at this point.

With thanks to Leon Poon (@LeonPoon) for the initial bringup.

Signed-off-by: Tee Hao Wei <angelsl@in04.sg>
[add missing entry in 10_fix_wifi_mac]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b232680f847f4ea8d058849a51dedebb8e398a01)

package/boot/uboot-envtools/files/ramips
target/linux/ramips/dts/mt7621_linksys_ea8100-v1.dts [new file with mode: 0644]
target/linux/ramips/image/mt7621.mk
target/linux/ramips/mt7621/base-files/etc/board.d/01_leds
target/linux/ramips/mt7621/base-files/etc/board.d/02_network
target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/10_fix_wifi_mac
target/linux/ramips/mt7621/base-files/etc/init.d/bootcount
target/linux/ramips/mt7621/base-files/lib/upgrade/platform.sh

index e1920303a990c1702d86a944702295031034463e..0de062bd8358079bb12bd0b686950868b60a32c8 100644 (file)
@@ -54,6 +54,7 @@ jcg,q20)
 linksys,ea7300-v1|\
 linksys,ea7300-v2|\
 linksys,ea7500-v2|\
 linksys,ea7300-v1|\
 linksys,ea7300-v2|\
 linksys,ea7500-v2|\
+linksys,ea8100-v1|\
 xiaomi,mi-router-3g|\
 xiaomi,mi-router-3-pro|\
 xiaomi,mi-router-4|\
 xiaomi,mi-router-3g|\
 xiaomi,mi-router-3-pro|\
 xiaomi,mi-router-4|\
diff --git a/target/linux/ramips/dts/mt7621_linksys_ea8100-v1.dts b/target/linux/ramips/dts/mt7621_linksys_ea8100-v1.dts
new file mode 100644 (file)
index 0000000..6cc2219
--- /dev/null
@@ -0,0 +1,8 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7621_linksys_ea7xxx.dtsi"
+
+/ {
+       compatible = "linksys,ea8100-v1", "mediatek,mt7621-soc";
+       model = "Linksys EA8100";
+};
index 873011d2d8fec95326cfd2d469c95315fdebcf8c..6645c7b06e5f29706d6b37bb94df1da374ed38bf 100644 (file)
@@ -854,6 +854,14 @@ define Device/linksys_ea7500-v2
 endef
 TARGET_DEVICES += linksys_ea7500-v2
 
 endef
 TARGET_DEVICES += linksys_ea7500-v2
 
+define Device/linksys_ea8100-v1
+  $(Device/linksys_ea7xxx)
+  DEVICE_MODEL := EA8100
+  DEVICE_VARIANT := v1
+  LINKSYS_HWNAME := EA8100
+endef
+TARGET_DEVICES += linksys_ea8100-v1
+
 define Device/linksys_re6500
   $(Device/dsa-migration)
   IMAGE_SIZE := 7872k
 define Device/linksys_re6500
   $(Device/dsa-migration)
   IMAGE_SIZE := 7872k
index 89a56dff2a485771aff95099b57f467595494408..95cf120f2de9ade6467315479aa0114919440d73 100755 (executable)
@@ -52,7 +52,8 @@ linksys,e5600)
        ;;
 linksys,ea7300-v1|\
 linksys,ea7300-v2|\
        ;;
 linksys,ea7300-v1|\
 linksys,ea7300-v2|\
-linksys,ea7500-v2)
+linksys,ea7500-v2|\
+linksys,ea8100-v1)
        ucidef_set_led_netdev "lan1" "lan1 link" "green:lan1" "lan1" "link"
        ucidef_set_led_netdev "lan2" "lan2 link" "green:lan2" "lan2" "link"
        ucidef_set_led_netdev "lan3" "lan3 link" "green:lan3" "lan3" "link"
        ucidef_set_led_netdev "lan1" "lan1 link" "green:lan1" "lan1" "link"
        ucidef_set_led_netdev "lan2" "lan2 link" "green:lan2" "lan2" "link"
        ucidef_set_led_netdev "lan3" "lan3 link" "green:lan3" "lan3" "link"
index 5d5923cc70de7319c3d7fbb68330a9070f24eb32..c0c767306af795d4a734c71f75ca08b6a761627b 100755 (executable)
@@ -142,7 +142,8 @@ ramips_setup_macs()
        linksys,e5600|\
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
        linksys,e5600|\
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
-       linksys,ea7500-v2)
+       linksys,ea7500-v2|\
+       linksys,ea8100-v1)
                lan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
                wan_mac=$lan_mac
                label_mac=$lan_mac
                lan_mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
                wan_mac=$lan_mac
                label_mac=$lan_mac
index 49b7f23ce914109f5ebb8ce2514a5048c35e584a..bd0f0254c6c3fe22d4b6d8aa3d1d3d56730238f3 100644 (file)
@@ -21,7 +21,8 @@ case "$board" in
        linksys,e5600|\
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
        linksys,e5600|\
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
-       linksys,ea7500-v2)
+       linksys,ea7500-v2|\
+       linksys,ea8100-v1)
                hw_mac_addr=$(mtd_get_mac_ascii devinfo hw_mac_addr)
                [ "$PHYNBR" = "0" ] && macaddr_add $hw_mac_addr 1 > /sys${DEVPATH}/macaddress
                [ "$PHYNBR" = "1" ] && macaddr_add $hw_mac_addr 2 > /sys${DEVPATH}/macaddress
                hw_mac_addr=$(mtd_get_mac_ascii devinfo hw_mac_addr)
                [ "$PHYNBR" = "0" ] && macaddr_add $hw_mac_addr 1 > /sys${DEVPATH}/macaddress
                [ "$PHYNBR" = "1" ] && macaddr_add $hw_mac_addr 2 > /sys${DEVPATH}/macaddress
index cfaa62485cead13deb7de65146bbe2e16dbbbf74..d3525ea0c9389df73f6f29635a3c75554b883d18 100755 (executable)
@@ -11,7 +11,8 @@ boot() {
        linksys,e5600|\
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
        linksys,e5600|\
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
-       linksys,ea7500-v2)
+       linksys,ea7500-v2|\
+       linksys,ea8100-v1)
                mtd resetbc s_env || true
                ;;
        samknows,whitebox-v8)
                mtd resetbc s_env || true
                ;;
        samknows,whitebox-v8)
index 689a0e51ae00a7801e1133b50298dab99d9b7d98..4943ad1305485e3997bab17a08490d331644ccda 100755 (executable)
@@ -62,6 +62,7 @@ platform_do_upgrade() {
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
        linksys,ea7500-v2|\
        linksys,ea7300-v1|\
        linksys,ea7300-v2|\
        linksys,ea7500-v2|\
+       linksys,ea8100-v1|\
        netgear,r6220|\
        netgear,r6260|\
        netgear,r6350|\
        netgear,r6220|\
        netgear,r6260|\
        netgear,r6350|\