ath79: add support for ALFA Network Tube-2HQ
authorPiotr Dymacz <pepe2k@gmail.com>
Thu, 17 Feb 2022 22:22:25 +0000 (23:22 +0100)
committerPiotr Dymacz <pepe2k@gmail.com>
Sun, 27 Feb 2022 15:54:54 +0000 (16:54 +0100)
ALFA Network Tube-2HQ is a successor of the Tube-2H/P series (EOL) which
was based on the Atheros AR9331. The new version uses Qualcomm QCA9531.

Specifications:

- Qualcomm/Atheros QCA9531 v2
- 650/400/200 MHz (CPU/DDR/AHB)
- 64 or 128 MB of RAM (DDR2)
- 16+ MB of flash (SPI NOR)
- 1x 10/100 Mbps Ethernet with passive PoE input (24 V)
  (802.3at/af PoE support with optional module)
- 1T1R 2.4 GHz Wi-Fi with external PA (SE2623L, up to 27 dBm) and LNA
- 1x Type-N (male) antenna connector
- 6x LED (5x driven by GPIO)
- 1x button (reset)
- external h/w watchdog (EM6324QYSP5B, enabled by default)
- UART (4-pin, 2.00 mm pitch) header on PCB

Flash instruction:

You can use sysupgrade image directly in vendor firmware which is based
on LEDE/OpenWrt. Alternatively, you can use web recovery mode in U-Boot:

1. Configure PC with static IP 192.168.1.2/24.
2. Connect PC with one of RJ45 ports, press the reset button, power up
   device, wait for first blink of all LEDs (indicates network setup),
   then keep button for 3 following blinks and release it.
3. Open 192.168.1.1 address in your browser and upload sysupgrade image.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
target/linux/ath79/dts/qca9531_alfa-network_tube-2hq.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/image/generic.mk

diff --git a/target/linux/ath79/dts/qca9531_alfa-network_tube-2hq.dts b/target/linux/ath79/dts/qca9531_alfa-network_tube-2hq.dts
new file mode 100644 (file)
index 0000000..f81fe28
--- /dev/null
@@ -0,0 +1,65 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qca9531_alfa-network_r36a.dtsi"
+
+/ {
+       model = "ALFA Network Tube-2HQ";
+       compatible = "alfa-network,tube-2hq", "qca,qca9531";
+
+       aliases {
+               led-boot = &led_signal4;
+               led-failsafe = &led_signal4;
+               led-upgrade = &led_signal4;
+       };
+
+       leds {
+               compatible = "gpio-leds";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&enable_gpio4 &enable_gpio16>;
+
+               lan {
+                       label = "blue:lan";
+                       gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
+               };
+
+               led_signal4: signal4 {
+                       label = "green:signal4";
+                       gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
+               };
+
+               signal1 {
+                       label = "red:signal1";
+                       gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+               };
+
+               signal2 {
+                       label = "orange:signal2";
+                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+               };
+
+               signal3 {
+                       label = "green:signal3";
+                       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+&eth0 {
+       nvmem-cells = <&macaddr_art_1002>;
+       nvmem-cell-names = "mac-address";
+
+       mac-address-increment = <(-1)>;
+};
+
+&eth1 {
+       compatible = "syscon", "simple-mfd";
+};
+
+&usb0 {
+       status = "disabled";
+};
+
+&usb_phy {
+       status = "disabled";
+};
index 18904f8528318094fbf8d10b99e68bbc9150f030..354df1da6f690e7ca6ea0acdff6bd0c8ddf93569 100644 (file)
@@ -48,6 +48,14 @@ alfa-network,r36a)
        ucidef_set_led_netdev "lan" "LAN" "blue:lan" "eth0"
        ucidef_set_led_switch "wan" "WAN" "blue:wan" "switch0" "0x10"
        ;;
+alfa-network,tube-2hq)
+       ucidef_set_led_netdev "lan" "LAN" "blue:lan" "eth0"
+       ucidef_set_rssimon "wlan0" "200000" "1"
+       ucidef_set_led_rssi "signal1" "SIGNAL1" "red:signal1" "wlan0" "1" "100"
+       ucidef_set_led_rssi "signal2" "SIGNAL2" "orange:signal2" "wlan0" "25" "100"
+       ucidef_set_led_rssi "signal3" "SIGNAL3" "green:signal3" "wlan0" "50" "100"
+       ucidef_set_led_rssi "signal4" "SIGNAL4" "green:signal4" "wlan0" "75" "100"
+       ;;
 asus,rp-ac66)
        ucidef_set_rssimon "wlan0" "200000" "1"
        ucidef_set_rssimon "wlan1" "200000" "1"
index 447d1cdea2060691bb0fdf8b287ab116d3e9de98..bb5c63a33e7bed5085de5da2ff7930a5ce4e264b 100644 (file)
@@ -13,6 +13,7 @@ ath79_setup_interfaces()
        allnet,all-wap02860ac|\
        alfa-network,ap121f|\
        alfa-network,pi-wifi4|\
+       alfa-network,tube-2hq|\
        arduino,yun|\
        aruba,ap-105|\
        asus,rp-ac66|\
@@ -529,6 +530,7 @@ ath79_setup_macs()
        alfa-network,n5q|\
        alfa-network,pi-wifi4|\
        alfa-network,r36a|\
+       alfa-network,tube-2hq|\
        engenius,eap300-v2|\
        engenius,ens202ext-v1)
                label_mac=$(mtd_get_mac_binary art 0x1002)
index b01eff7d0b0b2b1e803d9f4509e67f9ea2626b53..27a9860d287b604d92f3da1e0580e527eccc44a4 100644 (file)
@@ -298,6 +298,16 @@ define Device/alfa-network_r36a
 endef
 TARGET_DEVICES += alfa-network_r36a
 
+define Device/alfa-network_tube-2hq
+  SOC := qca9531
+  DEVICE_VENDOR := ALFA Network
+  DEVICE_MODEL := Tube-2HQ
+  DEVICE_PACKAGES := rssileds -swconfig
+  IMAGE_SIZE := 15872k
+  SUPPORTED_DEVICES += tube-2hq
+endef
+TARGET_DEVICES += alfa-network_tube-2hq
+
 define Device/allnet_all-wap02860ac
   $(Device/senao_loader_okli)
   SOC := qca9558