ath79: add support for TP-Link WBS210 v2
authorBernhard Geier <freifunk@geierb.de>
Sun, 3 Nov 2019 12:58:12 +0000 (13:58 +0100)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Sun, 3 Nov 2019 12:59:18 +0000 (13:59 +0100)
TP-Link WBS210 v2 is an outdoor wireless CPE for 2.4 GHz with
two Ethernet ports based on Atheros AR9344

The device is the same as TP-Link CPE220 v2, but with higher TX power (27 dBm
instead of 12 dBm) and two antenna connectors instead of built-in antennas.

Specifications:
 - SoC: Atheros AR9344
 - RAM: 64MB
 - Storage: 8 MB SPI NOR
 - Wireless: 2.4GHz 300 Mbps, 2x RP-SMA connector, 27 dBm TX power
 - Ethernet: 1x 10/100 Mbps with 24V POE IN, 1x 10/100 Mbps

Installation:
Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP: 192.168.0.100
Stock device TFTP adress: 192.168.0.254

The TP-Link WBS devices use the same GPIOs as the CPE devices,
except for the link4 LED. For this one, WBS devices use "2", while
CPE devices use "16". (Tested on WBS210 v2)

Signed-off-by: Bernhard Geier <freifunk@geierb.de>
[added comment about GPIO]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
target/linux/ath79/dts/ar9344_tplink_cpe210-v1.dts
target/linux/ath79/dts/ar9344_tplink_cpe220-v2.dts
target/linux/ath79/dts/ar9344_tplink_cpe510-v1.dts
target/linux/ath79/dts/ar9344_tplink_cpexxx-v1.dtsi
target/linux/ath79/dts/ar9344_tplink_wbs210-v2.dts [new file with mode: 0644]
target/linux/ath79/generic/base-files/etc/board.d/01_leds
target/linux/ath79/generic/base-files/etc/board.d/02_network
target/linux/ath79/generic/base-files/etc/board.d/03_gpio_switches
target/linux/ath79/image/generic-tp-link.mk
tools/firmware-utils/src/tplink-safeloader.c

index 1a107c23ef595d86dbc242ef4c8182c2703a2580..e82fd4a32f6920b3122727585e6f0e13c1614cf1 100644 (file)
@@ -7,3 +7,7 @@
        compatible = "tplink,cpe210-v1", "qca,ar9344";
        model = "TP-Link CPE210 v1";
 };
+
+&led_link4 {
+       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+};
index 0981b4af07ce1f7962ed0ed6746e4ac0cba7cb9c..7e8822710fca18b1e1499a43ed9cc6aec2424c2c 100644 (file)
@@ -7,3 +7,7 @@
        compatible = "tplink,cpe220-v2", "qca,ar9344";
        model = "TP-Link CPE220 v2";
 };
+
+&led_link4 {
+       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+};
index 225d16e2e7831bef07b5d6cb1107b9f84bfe33dd..34b83c944e6749eef68a4c7e3b0112bcc9cdfa83 100644 (file)
@@ -7,3 +7,7 @@
        compatible = "tplink,cpe510-v1", "qca,ar9344";
        model = "TP-Link CPE510 v1";
 };
+
+&led_link4 {
+       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+};
index 81802f3b5bb6494761fd125a22e4ad06f1a3fa5d..3ba964edde5fb71547126c4a786cb2622b81e270 100644 (file)
@@ -5,10 +5,10 @@
 
 / {
        aliases {
-               led-boot = &system;
-               led-failsafe = &system;
-               led-running = &system;
-               led-upgrade = &system;
+               led-boot = &led_link4;
+               led-failsafe = &led_link4;
+               led-running = &led_link4;
+               led-upgrade = &led_link4;
        };
 
        leds {
@@ -39,9 +39,8 @@
                        gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
                };
 
-               system: link4 {
+               led_link4: link4 {
                        label = "tp-link:green:link4";
-                       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
                };
        };
 };
diff --git a/target/linux/ath79/dts/ar9344_tplink_wbs210-v2.dts b/target/linux/ath79/dts/ar9344_tplink_wbs210-v2.dts
new file mode 100644 (file)
index 0000000..dddf4ae
--- /dev/null
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include "ar9344_tplink_cpexxx-v1.dtsi"
+
+/ {
+       compatible = "tplink,wbs210-v2", "qca,ar9344";
+       model = "TP-Link WBS210 v2";
+};
+
+&led_link4 {
+       gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
+};
index 441091de329cc3fa566ac555022956ea12ec7fe1..fbb0d0ea03dcd3ee13d7c2ea23e7a3458676a7b2 100755 (executable)
@@ -173,7 +173,8 @@ tplink,archer-d50-v1)
        ;;
 tplink,cpe210-v1|\
 tplink,cpe220-v2|\
-tplink,cpe510-v1)
+tplink,cpe510-v1|\
+tplink,wbs210-v2)
        ucidef_set_led_netdev "lan0" "LAN0" "tp-link:green:lan0" "eth1"
        ucidef_set_led_switch "lan1" "LAN1" "tp-link:green:lan1" "switch0" "0x10"
        ucidef_set_rssimon "wlan0" "200000" "1"
index e4179b4d384d73e4656414cb4f9c8e00eede6b46..10ca213e707b87247b1ab10c09ff0a970251183d 100755 (executable)
@@ -90,6 +90,7 @@ ath79_setup_interfaces()
        tplink,cpe210-v1|\
        tplink,cpe220-v2|\
        tplink,cpe510-v1|\
+       tplink,wbs210-v2|\
        ubnt,nanostation-m|\
        ubnt,routerstation)
                ucidef_set_interfaces_lan_wan "eth1" "eth0"
index d84d6cfe85b6e8adff12b9e4d12279c7e1c9ecec..4d6277c223cad4bd8974d958483e1b6ba3f69678 100755 (executable)
@@ -44,7 +44,8 @@ tplink,archer-c25-v1)
        ;;
 tplink,cpe210-v1|\
 tplink,cpe220-v2|\
-tplink,cpe510-v1)
+tplink,cpe510-v1|\
+tplink,wbs210-v2)
        ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "20"
        ;;
 ubnt,nanostation-ac)
index b272276b9f61d20e82981688d0cce24862451314..69cb1719e6d813a1069830f463161afda5070f55 100644 (file)
@@ -525,3 +525,14 @@ define Device/tplink_tl-wr842n-v3
   SUPPORTED_DEVICES += tl-wr842n-v3
 endef
 TARGET_DEVICES += tplink_tl-wr842n-v3
+
+define Device/tplink_wbs210-v2
+  $(Device/tplink-loader-okli)
+  ATH_SOC := ar9344
+  IMAGE_SIZE := 7680k
+  DEVICE_MODEL := WBS210
+  DEVICE_VARIANT := v2
+  DEVICE_PACKAGES := rssileds
+  TPLINK_BOARD_ID := WBS210V2
+endef
+TARGET_DEVICES += tplink_wbs210-v2
index ce3a039e7ed6e9c76d4fa445f4e11612e2f2a8a8..ee0d20ae9fe2dac5fa9b53d322b6f4dfe1fe882a 100644 (file)
@@ -465,6 +465,38 @@ static struct device_info boards[] = {
                .last_sysupgrade_partition = "support-list",
        },
 
+       {
+               .id     = "WBS210V2",
+               .vendor = "CPE510(TP-LINK|UN|N300-5):1.0\r\n",
+               .support_list =
+                       "SupportList:\r\n"
+                       "WBS210(TP-LINK|UN|N300-2|00000000):2.00\r\n"
+                       "WBS210(TP-LINK|US|N300-2|55530000):2.00\r\n"
+                       "WBS210(TP-LINK|EU|N300-2|45550000):2.00\r\n",
+               .support_trail = '\xff',
+               .soft_ver = NULL,
+
+               .partitions = {
+                       {"fs-uboot", 0x00000, 0x20000},
+                       {"partition-table", 0x20000, 0x02000},
+                       {"default-mac", 0x30000, 0x00020},
+                       {"product-info", 0x31100, 0x00100},
+                       {"signature", 0x32000, 0x00400},
+                       {"os-image", 0x40000, 0x200000},
+                       {"file-system", 0x240000, 0x570000},
+                       {"soft-version", 0x7b0000, 0x00100},
+                       {"support-list", 0x7b1000, 0x00400},
+                       {"user-config", 0x7c0000, 0x10000},
+                       {"default-config", 0x7d0000, 0x10000},
+                       {"log", 0x7e0000, 0x10000},
+                       {"radio", 0x7f0000, 0x10000},
+                       {NULL, 0, 0}
+               },
+
+               .first_sysupgrade_partition = "os-image",
+               .last_sysupgrade_partition = "support-list",
+       },
+
        {
                .id     = "WBS510",
                .vendor = "CPE510(TP-LINK|UN|N300-5):1.0\r\n",