From 372529d3117ef8cd6dc37d61d405e24ccba3584a Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Wed, 15 Apr 2020 13:19:33 +0200 Subject: [PATCH] ath79: add support for TP-Link TL-WA901ND v3 This ports support for the TL-WA901ND v3 from ar71xx to ath79. Most of the hardware is shared with the TL-WA850/860RE v1 range extenders. It completes the TL-WA901ND series in ath79. Specifications: Board: AP123 / AR9341 Flash/RAM: 4/32 MiB CPU: 535 MHz WiFi: 2.4 GHz b/g/n Ethernet: 1 port (100M) Flashing instructions: Upload the factory image via the vendor firmware upgrade option. This has not been tested on device, but port from ar71xx is straightforward and the device will be disabled by default anyway. Signed-off-by: Adrian Schmutzler --- .../ath79/dts/ar9341_tplink_tl-wa901nd-v3.dts | 52 +++++++++++++++++++ target/linux/ath79/image/tiny-tp-link.mk | 10 ++++ .../ath79/tiny/base-files/etc/board.d/01_leds | 1 + .../tiny/base-files/etc/board.d/02_network | 1 + 4 files changed, 64 insertions(+) create mode 100644 target/linux/ath79/dts/ar9341_tplink_tl-wa901nd-v3.dts diff --git a/target/linux/ath79/dts/ar9341_tplink_tl-wa901nd-v3.dts b/target/linux/ath79/dts/ar9341_tplink_tl-wa901nd-v3.dts new file mode 100644 index 0000000000..4abdd60c3c --- /dev/null +++ b/target/linux/ath79/dts/ar9341_tplink_tl-wa901nd-v3.dts @@ -0,0 +1,52 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar9341_tplink_tl-wa.dtsi" + +/ { + model = "TP-Link TL-WA901ND v3"; + compatible = "tplink,tl-wa901nd-v3", "qca,ar9341"; + + aliases { + led-boot = &led_system; + led-failsafe = &led_system; + led-running = &led_system; + led-upgrade = &led_system; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "Reset"; + linux,code = ; + gpios = <&gpio 17 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; + + leds { + compatible = "gpio-leds"; + + lan { + label = "tp-link:green:lan"; + gpios = <&gpio 18 GPIO_ACTIVE_LOW>; + }; + + wlan { + label = "tp-link:green:wlan"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0tpt"; + }; + + qss { + label = "tp-link:green:qss"; + gpios = <&gpio 15 GPIO_ACTIVE_LOW>; + }; + + led_system: system { + label = "tp-link:green:system"; + gpios = <&gpio 14 GPIO_ACTIVE_LOW>; + }; + }; +}; diff --git a/target/linux/ath79/image/tiny-tp-link.mk b/target/linux/ath79/image/tiny-tp-link.mk index 0da712c5d4..c918c6baa6 100644 --- a/target/linux/ath79/image/tiny-tp-link.mk +++ b/target/linux/ath79/image/tiny-tp-link.mk @@ -191,6 +191,16 @@ define Device/tplink_tl-wa901nd-v2 endef TARGET_DEVICES += tplink_tl-wa901nd-v2 +define Device/tplink_tl-wa901nd-v3 + $(Device/tplink-4mlzma) + SOC := ar9341 + DEVICE_MODEL := TL-WA901ND + DEVICE_VARIANT := v3 + TPLINK_HWID := 0x09010003 + SUPPORTED_DEVICES += tl-wa901nd-v3 +endef +TARGET_DEVICES += tplink_tl-wa901nd-v3 + define Device/tplink_tl-wa901nd-v4 $(Device/tplink-4mlzma) SOC := tp9343 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 ec8e2d60c5..bc0b15bba5 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 @@ -50,6 +50,7 @@ tplink,tl-wa801nd-v4|\ tplink,tl-wa830re-v1|\ tplink,tl-wa860re-v1|\ tplink,tl-wa901nd-v1|\ +tplink,tl-wa901nd-v3|\ tplink,tl-wa901nd-v4|\ tplink,tl-wa901nd-v5) ucidef_set_led_netdev "lan" "LAN" "tp-link:green:lan" "eth0" 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 87f8d27ec9..cbcdbe9a89 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 @@ -43,6 +43,7 @@ ath79_setup_interfaces() tplink,tl-wa860re-v1|\ tplink,tl-wa901nd-v1|\ tplink,tl-wa901nd-v2|\ + tplink,tl-wa901nd-v3|\ tplink,tl-wa901nd-v4|\ tplink,tl-wa901nd-v5|\ tplink,tl-wr703n|\