From fb99ac6807f29eb5fe50271eff711e7415038731 Mon Sep 17 00:00:00 2001 From: Christian Buschau Date: Wed, 5 Feb 2020 22:05:39 +0100 Subject: [PATCH] ath79: add support for TP-Link TL-WA830RE v1 This ports support for the TL-WA830RE v1 range extender from ar71xx to ath79. Specifications: - SOC: Atheros AR7240 - CPU: 400MHz - Flash: 4 MiB (Spansion S25FL032P) - RAM: 32 MiB (Zentel A3S56D40FTP-G5) - WLAN: Atheros AR9280 bgn 2x2 - Ethernet: 1 port (100M) Flash instructions: - install from u-boot with tftp (requires serial access) > setenv ipaddr a.b.c.d > setenv serverip e.f.g.h > tftpboot 0x80000000 \ openwrt-ath79-tiny-tplink_tl-wa830re-v1-squashfs-factory.bin > erase 0x9f020000 +0x3c0000 > cp.b 0x80000000 0x9f020000 0x3c0000 > bootm 0x9f020000 - flash factory image from OEM WebUI - sysupgrade from ar71xx image The device seems to be a clone of the following devices not yet added to ath79: - tl-wa701nd-v1 - tl-wa730re-v1 - tl-wa801nd-v1 - tl-wa901nd-v1 Signed-off-by: Christian Buschau [make use of ar7240_tplink.dtsi, add note about clones] Signed-off-by: Adrian Schmutzler --- .../linux/ath79/dts/ar7240_tplink_tl-wa.dtsi | 18 ++++++++++++++++++ .../ath79/dts/ar7240_tplink_tl-wa830re-v1.dts | 9 +++++++++ target/linux/ath79/image/tiny-tp-link.mk | 10 ++++++++++ .../ath79/tiny/base-files/etc/board.d/01_leds | 3 ++- .../tiny/base-files/etc/board.d/02_network | 1 + .../etc/hotplug.d/firmware/10-ath9k-eeprom | 1 + 6 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wa.dtsi create mode 100644 target/linux/ath79/dts/ar7240_tplink_tl-wa830re-v1.dts diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wa.dtsi b/target/linux/ath79/dts/ar7240_tplink_tl-wa.dtsi new file mode 100644 index 0000000000..ac5a4d5ee9 --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wa.dtsi @@ -0,0 +1,18 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "ar7240_tplink.dtsi" + +&leds { + lan { + label = "tp-link:green:lan"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + }; +}; + +ð1 { + mtd-mac-address = <&uboot 0x1fc00>; +}; + +&ath9k { + compatible = "pci168c,002a"; +}; diff --git a/target/linux/ath79/dts/ar7240_tplink_tl-wa830re-v1.dts b/target/linux/ath79/dts/ar7240_tplink_tl-wa830re-v1.dts new file mode 100644 index 0000000000..f74ddc04ed --- /dev/null +++ b/target/linux/ath79/dts/ar7240_tplink_tl-wa830re-v1.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7240_tplink_tl-wa.dtsi" + +/ { + model = "TP-Link TL-WA830RE v1"; + compatible = "tplink,tl-wa830re-v1", "qca,ar7240"; +}; diff --git a/target/linux/ath79/image/tiny-tp-link.mk b/target/linux/ath79/image/tiny-tp-link.mk index 2107e47cc3..787ac055ba 100644 --- a/target/linux/ath79/image/tiny-tp-link.mk +++ b/target/linux/ath79/image/tiny-tp-link.mk @@ -66,6 +66,16 @@ define Device/tplink_tl-mr3420-v2 endef TARGET_DEVICES += tplink_tl-mr3420-v2 +define Device/tplink_tl-wa830re-v1 + $(Device/tplink-4m) + SOC := ar7240 + DEVICE_MODEL := TL-WA830RE + DEVICE_VARIANT := v1 + TPLINK_HWID := 0x08300010 + SUPPORTED_DEVICES += tl-wa901nd +endef +TARGET_DEVICES += tplink_tl-wa830re-v1 + define Device/tplink_tl-wa850re-v1 $(Device/tplink-4mlzma) SOC := ar9341 diff --git a/target/linux/ath79/tiny/base-files/etc/board.d/01_leds b/target/linux/ath79/tiny/base-files/etc/board.d/01_leds index 75de6f3aad..43efc46145 100755 --- a/target/linux/ath79/tiny/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/tiny/base-files/etc/board.d/01_leds @@ -41,7 +41,8 @@ on,n150r) ucidef_set_led_switch "lan2" "LAN2" "netgear:green:lan2" "switch0" "0x04" "0x0f" ;; tplink,tl-mr3020-v1|\ -tplink,tl-mr3040-v2) +tplink,tl-mr3040-v2|\ +tplink,tl-wa830re-v1) ucidef_set_led_netdev "lan" "LAN" "tp-link:green:lan" "eth0" ;; tplink,tl-mr3420-v2|\ diff --git a/target/linux/ath79/tiny/base-files/etc/board.d/02_network b/target/linux/ath79/tiny/base-files/etc/board.d/02_network index 56200de59e..c8269599a4 100755 --- a/target/linux/ath79/tiny/base-files/etc/board.d/02_network +++ b/target/linux/ath79/tiny/base-files/etc/board.d/02_network @@ -32,6 +32,7 @@ ath79_setup_interfaces() tplink,tl-mr10u|\ tplink,tl-mr3020-v1|\ tplink,tl-mr3040-v2|\ + tplink,tl-wa830re-v1|\ tplink,tl-wa850re-v1|\ tplink,tl-wa850re-v2|\ tplink,tl-wa901nd-v2|\ diff --git a/target/linux/ath79/tiny/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/tiny/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom index 5952a40195..0965a48743 100644 --- a/target/linux/ath79/tiny/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom +++ b/target/linux/ath79/tiny/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom @@ -10,6 +10,7 @@ case "$FIRMWARE" in "ath9k-eeprom-pci-0000:00:00.0.bin") case $board in buffalo,whr-g301n|\ + tplink,tl-wa830re-v1|\ tplink,tl-wr841-v5|\ tplink,tl-wr941-v4) caldata_extract "art" 0x1000 0xeb8 -- 2.30.2