[openwrt/openwrt] ath79: Add support for Ubiquiti NanoBeam AC Gen2

LEDE Commits lede-commits at lists.infradead.org
Wed Nov 18 15:51:18 EST 2020


adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/79f3f1358bf993a5d7ae14eba9cea2686b40841d

commit 79f3f1358bf993a5d7ae14eba9cea2686b40841d
Author: Nick Hainke <vincent at systemli.org>
AuthorDate: Sun Oct 25 14:51:55 2020 +0100

    ath79: Add support for Ubiquiti NanoBeam AC Gen2
    
    CPU:         Atheros AR9342 rev 3 SoC
    RAM:         64 MB DDR2
    Flash:       16 MB NOR SPI
    WLAN 2.4GHz: Atheros AR9342 v3 (ath9k)
    WLAN 5.0GHz: QCA988X
    Ports:       2x GbE
    
    Flashing procedure is identical to other ubnt devices.
    https://openwrt.org/toh/ubiquiti/common
    
    Flashing through factory firmware
    1. Ensure firmware version v8.7.0 is installed.
       Up/downgrade to this exact version.
    2. Patch fwupdate.real binary using
       `hexdump -Cv /bin/ubntbox | sed 's/14 40 fe 27/00 00 00 00/g' | \
        hexdump -R > /tmp/fwupdate.real`
    3. Make the patched fwupdate.real binary executable using
       `chmod +x /tmp/fwupdate.real`
    4. Copy the squashfs factory image to /tmp on the device
    5. Flash OpenWrt using `/tmp/fwupdate.real -m <squashfs-factory image>`
    6. Wait for the device to reboot
    (copied from Ubiquiti NanoBeam AC and modified)
    
    To keep it consistent, we will add the gen1 variant to
    the nanobeam ac gen1.
    
    Signed-off-by: Nick Hainke <vincent at systemli.org>
---
 ...342_ubnt_nanobeam-ac.dts => ar9342_ubnt_nanobeam-ac-gen2.dts} | 8 ++++----
 target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts               | 2 +-
 target/linux/ath79/generic/base-files/etc/board.d/01_leds        | 1 +
 target/linux/ath79/generic/base-files/etc/board.d/02_network     | 2 ++
 .../linux/ath79/generic/base-files/etc/board.d/03_gpio_switches  | 1 +
 .../generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata  | 1 +
 target/linux/ath79/image/generic-ubnt.mk                         | 9 +++++++++
 7 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac-gen2.dts
similarity index 71%
copy from target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts
copy to target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac-gen2.dts
index dc2537a77e..08f3d2c6d8 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts
+++ b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac-gen2.dts
@@ -1,10 +1,10 @@
-// SPDX-License-Identifier: GPL-2.0-only
+// SPDX-License-Identifier: GPL-2.0-or-later
 
-#include "ar9342_ubnt_wa_1port.dtsi"
+#include "ar9342_ubnt_wa_2port.dtsi"
 
 / {
-	compatible = "ubnt,nanobeam-ac", "ubnt,wa", "qca,ar9342";
-	model = "Ubiquiti NanoBeam AC (WA)";
+	compatible = "ubnt,nanobeam-ac-gen2", "ubnt,wa", "qca,ar9342";
+	model = "Ubiquiti NanoBeam AC Gen2 (WA)";
 
 	aliases {
 		led-boot = &led_rssi3;
diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts
index dc2537a77e..b32a200b11 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts
+++ b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts
@@ -4,7 +4,7 @@
 
 / {
 	compatible = "ubnt,nanobeam-ac", "ubnt,wa", "qca,ar9342";
-	model = "Ubiquiti NanoBeam AC (WA)";
+	model = "Ubiquiti NanoBeam AC Gen1 (WA)";
 
 	aliases {
 		led-boot = &led_rssi3;
diff --git a/target/linux/ath79/generic/base-files/etc/board.d/01_leds b/target/linux/ath79/generic/base-files/etc/board.d/01_leds
index 227e64678d..08ca2a8398 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds
+++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds
@@ -362,6 +362,7 @@ ubnt,rocket-m)
 	ucidef_set_led_rssi "rssihigh" "RSSIHIGH" "green:link4" "wlan0" "76" "100"
 	;;
 ubnt,nanobeam-ac|\
+ubnt,nanobeam-ac-gen2|\
 ubnt,nanostation-ac|\
 ubnt,powerbeam-5ac-gen2)
 	ucidef_set_rssimon "wlan0" "200000" "1"
diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network
index a587cfac96..58518a8273 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network
@@ -248,6 +248,7 @@ ath79_setup_interfaces()
 	qxwlan,e1700ac-v2-16m|\
 	qxwlan,e750g-v8-8m|\
 	qxwlan,e750g-v8-16m|\
+	ubnt,nanobeam-ac-gen2|\
 	ubnt,nanostation-ac|\
 	yuncore,a782|\
 	yuncore,xd4200)
@@ -582,6 +583,7 @@ ath79_setup_macs()
 		label_mac=$wan_mac
 		;;
 	ubnt,litebeam-ac-gen2|\
+	ubnt,nanobeam-ac-gen2|\
 	ubnt,powerbeam-5ac-500|\
 	ubnt,powerbeam-5ac-gen2)
 		label_mac=$(mtd_get_mac_binary art 0x5006)
diff --git a/target/linux/ath79/generic/base-files/etc/board.d/03_gpio_switches b/target/linux/ath79/generic/base-files/etc/board.d/03_gpio_switches
index d390fdfbe2..8ec0af53d4 100755
--- a/target/linux/ath79/generic/base-files/etc/board.d/03_gpio_switches
+++ b/target/linux/ath79/generic/base-files/etc/board.d/03_gpio_switches
@@ -76,6 +76,7 @@ tplink,wbs510-v2)
 ubnt,aircube-isp)
 	ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "11"
 	;;
+ubnt,nanobeam-ac-gen2|\
 ubnt,nanostation-ac)
 	ucidef_add_gpio_switch "poe_passthrough" "PoE Passthrough" "3"
 	;;
diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
index 1e205468b7..83ffc8f862 100644
--- a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
+++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/11-ath10k-caldata
@@ -33,6 +33,7 @@ case "$FIRMWARE" in
 	ubnt,lap-120|\
 	ubnt,litebeam-ac-gen2|\
 	ubnt,nanobeam-ac|\
+	ubnt,nanobeam-ac-gen2|\
 	ubnt,nanostation-ac|\
 	ubnt,nanostation-ac-loco|\
 	ubnt,powerbeam-5ac-500|\
diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk
index cd67ea2904..6e12c34d85 100644
--- a/target/linux/ath79/image/generic-ubnt.mk
+++ b/target/linux/ath79/image/generic-ubnt.mk
@@ -190,10 +190,19 @@ TARGET_DEVICES += ubnt_litebeam-ac-gen2
 define Device/ubnt_nanobeam-ac
   $(Device/ubnt-wa)
   DEVICE_MODEL := NanoBeam AC
+  DEVICE_VARIANT := Gen1
   DEVICE_PACKAGES += kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct rssileds
 endef
 TARGET_DEVICES += ubnt_nanobeam-ac
 
+define Device/ubnt_nanobeam-ac-gen2
+  $(Device/ubnt-wa)
+  DEVICE_MODEL := NanoBeam AC
+  DEVICE_VARIANT := Gen2
+  DEVICE_PACKAGES += kmod-ath10k-ct-smallbuffers ath10k-firmware-qca988x-ct rssileds
+endef
+TARGET_DEVICES += ubnt_nanobeam-ac-gen2
+
 define Device/ubnt_nanobridge-m
   $(Device/ubnt-xm)
   SOC := ar7241



More information about the lede-commits mailing list