[openwrt/openwrt] ath79: add support for Ubiquiti NanoBeam M5

LEDE Commits lede-commits at lists.infradead.org
Sat May 21 15:05:25 PDT 2022


blocktrron pushed a commit to openwrt/openwrt.git, branch openwrt-22.03:
https://git.openwrt.org/d9cb31f9443896750c2e16b443ed07cdc4bef3ba

commit d9cb31f9443896750c2e16b443ed07cdc4bef3ba
Author: Jan-Niklas Burfeind <git at aiyionpri.me>
AuthorDate: Sat Apr 23 17:49:34 2022 +0200

    ath79: add support for Ubiquiti NanoBeam M5
    
    Ubiquiti NanoBeam M5 devices are CPE equipment for customer locations
    with one Ethernet port and a 5 GHz 300Mbps wireless interface.
    
    Specificatons:
    
    - Atheros AR9342
    - 535 MHz CPU
    - 64 MB RAM
    - 8 MB Flash
    - 1x 10/100 Mbps Ethernet with passive PoE input (24 V)
    - 6 LEDs of which four are rssi
    - 1 reset button
    - UART (4-pin) header on PCB
    
    Notes:
    
    The device was supported by OpenWrt in ar71xx.
    
    Flash instructions (web/ssh/tftp):
    
    Loading the image via ssh vias a stock firmware prior "AirOS 5.6".
    Downgrading stock is possible.
    
    * Flashing is possible via AirOS software update page:
    The "factory" ROM image is recognized as non-native and then installed correctly.
    AirOS warns to better be familiar with the recovery procedure.
    
    * Flashing can be done via ssh, which is becoming difficult due to legacy
    keyexchange methods.
    
    This is an exempary ssh-config:
    KexAlgorithms +diffie-hellman-group1-sha1
    HostKeyAlgorithms ssh-rsa
    PubkeyAcceptedKeyTypes ssh-rsa
    User ubnt
    
    The password is ubnt.
    
    Connecting via IPv6 link local worked best for me.
    
    1. scp the factory image to /tmp
    2. fwupdate.real -m /tmp/firmware_image_file.bin -d
    
    * Alternatively tftp is possible:
    
    1. Configure PC with static IP 192.168.1.2/24.
    2. Enter the rescue mode. Power off the device, push the reset button on
       the device (or the PoE) and keep it pressed.
       Power on the device, while still pushing the reset button.
    3. When all the leds blink at the same time, release the reset button.
    4. Upload the firmware image file via TFTP:
    
    tftp 192.168.1.20
    tftp> bin
    tftp> trace
    Packet tracing on.
    tftp> put firmware_image.bin
    
    Signed-off-by: Jan-Niklas Burfeind <git at aiyionpri.me>
    (cherry picked from commit 4cd3ff8a79738fa503150e52162c7df6d9bd3534)
---
 target/linux/ath79/dts/ar9342_ubnt_nanobeam-m5.dts | 26 ++++++++++++++++++++++
 target/linux/ath79/image/generic-ubnt.mk           |  8 +++++++
 2 files changed, 34 insertions(+)

diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-m5.dts b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-m5.dts
new file mode 100644
index 0000000000..86a5e3a751
--- /dev/null
+++ b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-m5.dts
@@ -0,0 +1,26 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "ar9342_ubnt_xw.dtsi"
+
+/ {
+	compatible = "ubnt,nanobeam-m5-xw", "ubnt,xw", "qca,ar9342";
+	model = "Ubiquiti NanoBeam M5 (XW)";
+};
+
+&mdio0 {
+	status = "okay";
+
+	phy-mask = <0x1>;
+
+	phy1: ethernet-phy at 1 {
+		reg = <1>;
+		phy-mode = "mii";
+		reset-gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
+	};
+};
+
+&eth0 {
+	status = "okay";
+
+	phy-handle = <&phy1>;
+};
diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk
index 153b73abb0..3713f538f1 100644
--- a/target/linux/ath79/image/generic-ubnt.mk
+++ b/target/linux/ath79/image/generic-ubnt.mk
@@ -255,6 +255,14 @@ define Device/ubnt_nanobeam-ac-xc
 endef
 TARGET_DEVICES += ubnt_nanobeam-ac-xc
 
+define Device/ubnt_nanobeam-m5
+  $(Device/ubnt-xw)
+  DEVICE_MODEL := NanoBeam M5
+  DEVICE_PACKAGES += rssileds
+  SUPPORTED_DEVICES += loco-m-xw
+endef
+TARGET_DEVICES += ubnt_nanobeam-m5
+
 define Device/ubnt_nanobridge-m
   $(Device/ubnt-xm)
   SOC := ar7241




More information about the lede-commits mailing list