From e202a8b9f6ecf02d42da4781dc5e27abe957f7dc Mon Sep 17 00:00:00 2001
From: Paul Wassi
Date: Sun, 22 Oct 2017 22:39:30 +0200
Subject: ar71xx: add support for TP-Link TL-WA901ND v5
The TL-WA901ND v5 has the same hardware as v4, although the PCB has
a different layout. Installation from factory is done via TFTP.
(rename -factory image to wa901ndv4_tp_recovery.bin for tftp)
Signed-off-by: Paul Wassi
---
target/linux/ar71xx/base-files/etc/board.d/01_leds | 3 ++-
target/linux/ar71xx/base-files/etc/board.d/02_network | 1 +
target/linux/ar71xx/base-files/etc/diag.sh | 1 +
target/linux/ar71xx/base-files/lib/ar71xx.sh | 3 +++
target/linux/ar71xx/base-files/lib/upgrade/platform.sh | 1 +
target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wa901nd-v4.c | 5 ++++-
target/linux/ar71xx/files/arch/mips/ath79/machtypes.h | 1 +
target/linux/ar71xx/image/tp-link.mk | 9 ++++++++-
8 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/target/linux/ar71xx/base-files/etc/board.d/01_leds b/target/linux/ar71xx/base-files/etc/board.d/01_leds
index 97abd91..b670259 100755
--- a/target/linux/ar71xx/base-files/etc/board.d/01_leds
+++ b/target/linux/ar71xx/base-files/etc/board.d/01_leds
@@ -704,7 +704,8 @@ tl-wa801nd-v2|\
tl-wa830re-v2|\
tl-wa860re|\
tl-wa901nd-v3|\
-tl-wa901nd-v4)
+tl-wa901nd-v4|\
+tl-wa901nd-v5)
ucidef_set_led_netdev "lan" "LAN" "tp-link:green:lan" "eth0"
ucidef_set_led_wlan "wlan" "WLAN" "tp-link:green:wlan" "phy0tpt"
;;
diff --git a/target/linux/ar71xx/base-files/etc/board.d/02_network b/target/linux/ar71xx/base-files/etc/board.d/02_network
index 614c82d..876eeab 100755
--- a/target/linux/ar71xx/base-files/etc/board.d/02_network
+++ b/target/linux/ar71xx/base-files/etc/board.d/02_network
@@ -124,6 +124,7 @@ ar71xx_setup_interfaces()
tl-wa901nd-v2|\
tl-wa901nd-v3|\
tl-wa901nd-v4|\
+ tl-wa901nd-v5|\
tl-wr703n|\
tl-wr802n-v1|\
tl-wr802n-v2|\
diff --git a/target/linux/ar71xx/base-files/etc/diag.sh b/target/linux/ar71xx/base-files/etc/diag.sh
index 3fcbe30..1f588fc 100644
--- a/target/linux/ar71xx/base-files/etc/diag.sh
+++ b/target/linux/ar71xx/base-files/etc/diag.sh
@@ -391,6 +391,7 @@ get_status_led() {
tl-wa901nd-v2|\
tl-wa901nd-v3|\
tl-wa901nd-v4|\
+ tl-wa901nd-v5|\
tl-wdr3320-v2|\
tl-wdr3500|\
tl-wr1041n-v2|\
diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
index 306af08..385214f 100755
--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
+++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
@@ -1106,6 +1106,9 @@ ar71xx_board_detect() {
*"TL-WA901ND v4")
name="tl-wa901nd-v4"
;;
+ *"TL-WA901ND v5")
+ name="tl-wa901nd-v5"
+ ;;
*"TL-WDR3320 v2")
name="tl-wdr3320-v2"
;;
diff --git a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
index e7947a3..43c7ea7 100755
--- a/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ar71xx/base-files/lib/upgrade/platform.sh
@@ -423,6 +423,7 @@ platform_check_image() {
tl-wa901nd-v2|\
tl-wa901nd-v3|\
tl-wa901nd-v4|\
+ tl-wa901nd-v5|\
tl-wdr3320-v2|\
tl-wdr3500|\
tl-wdr4300|\
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wa901nd-v4.c b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wa901nd-v4.c
index 9c651bb..ffbcd6f 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wa901nd-v4.c
+++ b/target/linux/ar71xx/files/arch/mips/ath79/mach-tl-wa901nd-v4.c
@@ -1,5 +1,5 @@
/*
- * TP-LINK TL-WA901ND v4 board
+ * TP-LINK TL-WA901ND v4, v5 board
*
* Copyright (C) 2015 Matthias Schiffer
* Copyright (C) 2016 Tiziano Bacocco
@@ -110,3 +110,6 @@ static void __init TL_WA901ND_V4_setup(void)
MIPS_MACHINE(ATH79_MACH_TL_WA901ND_V4, "TL-WA901ND-v4", "TP-LINK TL-WA901ND v4",
TL_WA901ND_V4_setup);
+
+MIPS_MACHINE(ATH79_MACH_TL_WA901ND_V5, "TL-WA901ND-v5", "TP-LINK TL-WA901ND v5",
+ TL_WA901ND_V4_setup);
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h b/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
index a08e3a9..146a79d 100644
--- a/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
+++ b/target/linux/ar71xx/files/arch/mips/ath79/machtypes.h
@@ -239,6 +239,7 @@ enum ath79_mach_type {
ATH79_MACH_TL_WA901ND_V2, /* TP-LINK TL-WA901ND v2 */
ATH79_MACH_TL_WA901ND_V3, /* TP-LINK TL-WA901ND v3 */
ATH79_MACH_TL_WA901ND_V4, /* TP-LINK TL-WA901ND v4 */
+ ATH79_MACH_TL_WA901ND_V5, /* TP-LINK TL-WA901ND v5 */
ATH79_MACH_TL_WDR3320_V2, /* TP-LINK TL-WDR3320 v2 */
ATH79_MACH_TL_WDR3500, /* TP-LINK TL-WDR3500 */
ATH79_MACH_TL_WDR4300, /* TP-LINK TL-WDR4300 */
diff --git a/target/linux/ar71xx/image/tp-link.mk b/target/linux/ar71xx/image/tp-link.mk
index 18c50cf..c3cfdb9 100644
--- a/target/linux/ar71xx/image/tp-link.mk
+++ b/target/linux/ar71xx/image/tp-link.mk
@@ -574,7 +574,14 @@ define Device/tl-wa901nd-v4
TPLINK_HWID := 0x09010004
IMAGE/factory.bin := append-rootfs | mktplinkfw factory -C EU
endef
-TARGET_DEVICES += tl-wa901nd-v1 tl-wa901nd-v2 tl-wa901nd-v3 tl-wa901nd-v4
+
+define Device/tl-wa901nd-v5
+ $(Device/tl-wa901nd-v4)
+ DEVICE_TITLE := TP-LINK TL-WA901N/ND v5
+ BOARDNAME := TL-WA901ND-v5
+ TPLINK_HWID := 0x09010005
+endef
+TARGET_DEVICES += tl-wa901nd-v1 tl-wa901nd-v2 tl-wa901nd-v3 tl-wa901nd-v4 tl-wa901nd-v5
define Device/tl-wdr3320-v2
$(Device/tplink-4mlzma)
--
cgit v1.1