From 1775d50bdeaccc573f2625e73473d7fd6748ef09 Mon Sep 17 00:00:00 2001 From: Roger Pueyo Centelles Date: Sun, 15 Mar 2020 18:20:03 +0100 Subject: [PATCH] ath79: add support for Ubiquiti NanoBridge M (XM) This patch adds support for the Ubiquiti NanoBridge M (XM), a 802.11n wireless with a feed+dish form factor, with the same board definition as the Bullet M (XM). Specifications: - Atheros AR7241 SoC - 32 MB RAM - 8 MB SPI flash - 1x 10/100 Mbps Ethernet port, 24 Vdc PoE-in - Power and LAN green LEDs - 4x RSSI LEDs (red, orange, green, green) - UART (115200 8N1) Flashing via stock GUI: - WARNING: flashing OpenWrt from AirOS v5.6 or newer will brick your device! Read the wiki for more info. - Downgrade to AirOS v5.5.x (latest available is 5.5.11) first. - Upload the factory image via AirOS web GUI. Flashing via TFTP: - WARNING: flashing OpenWrt from AirOS v5.6 or newer will brick your device! Read the wiki for more info. - Downgrade to AirOS v5.5.x (latest available is 5.5.11) first. - Use a pointy tool (e.g., pen cap, slotted screwdriver) to keep the reset button pressed. - Power on the device (keep reset button pressed). - Keep pressing until LEDs flash alternatively LED1+LED3 => LED2+LED4 => LED1+LED3, etc. - Release reset button. - The device starts a TFTP server at 192.168.1.20. - Set a static IP on the computer (e.g., 192.168.1.21/24). - Upload via tftp the factory image: $ tftp 192.168.1.20 tftp> bin tftp> trace tftp> put openwrt-ath79-generic-xxxxx-ubnt_nanobridge-m-squashfs-factory.bin Signed-off-by: Roger Pueyo Centelles [rebase, fix includes in DTS, add label MAC address, add SOC and fix sorting in generic-ubnt.mk] Signed-off-by: Adrian Schmutzler --- .../linux/ath79/dts/ar7241_ubnt_nanobridge-m.dts | 15 +++++++++++++++ .../ath79/generic/base-files/etc/board.d/01_leds | 1 + .../generic/base-files/etc/board.d/02_network | 2 ++ .../etc/hotplug.d/firmware/10-ath9k-eeprom | 1 + target/linux/ath79/image/generic-ubnt.mk | 9 +++++++++ 5 files changed, 28 insertions(+) create mode 100644 target/linux/ath79/dts/ar7241_ubnt_nanobridge-m.dts diff --git a/target/linux/ath79/dts/ar7241_ubnt_nanobridge-m.dts b/target/linux/ath79/dts/ar7241_ubnt_nanobridge-m.dts new file mode 100644 index 0000000000..005ef27caa --- /dev/null +++ b/target/linux/ath79/dts/ar7241_ubnt_nanobridge-m.dts @@ -0,0 +1,15 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7241.dtsi" +#include "ar724x_ubnt_xm.dtsi" +#include "ar724x_ubnt_xm_outdoor.dtsi" + +/ { + compatible = "ubnt,nanobridge-m", "ubnt,xm", "qca,ar7241"; + model = "Ubiquiti NanoBridge M"; +}; + +ð1 { + compatible = "syscon", "simple-mfd"; +}; 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 2df7dca89d..046339aa0a 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 @@ -253,6 +253,7 @@ trendnet,tew-823dru) ubnt,bullet-m-ar7240|\ ubnt,bullet-m-ar7241|\ ubnt,bullet-m-xw|\ +ubnt,nanobridge-m|\ ubnt,nanostation-loco-m|\ ubnt,nanostation-loco-m-xw|\ ubnt,nanostation-m|\ 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 fc1fee4844..cb84d31c01 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 @@ -46,6 +46,7 @@ ath79_setup_interfaces() ubnt,lap-120|\ ubnt,litebeam-ac-gen2|\ ubnt,nanobeam-ac|\ + ubnt,nanobridge-m|\ ubnt,nanostation-ac-loco|\ ubnt,nanostation-loco-m|\ ubnt,nanostation-loco-m-xw|\ @@ -449,6 +450,7 @@ ath79_setup_macs() ubnt,airrouter|\ ubnt,bullet-m-ar7240|\ ubnt,bullet-m-ar7241|\ + ubnt,nanobridge-m|\ ubnt,nanostation-loco-m|\ ubnt,nanostation-m|\ ubnt,picostation-m|\ diff --git a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom index 0cf8b43514..a96b44b1c9 100644 --- a/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom +++ b/target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom @@ -87,6 +87,7 @@ case "$FIRMWARE" in ubnt,airrouter|\ ubnt,bullet-m-ar7240|\ ubnt,bullet-m-ar7241|\ + ubnt,nanobridge-m|\ ubnt,nanostation-loco-m|\ ubnt,nanostation-m|\ ubnt,picostation-m|\ diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk index d2c4f73797..7ad54083b6 100644 --- a/target/linux/ath79/image/generic-ubnt.mk +++ b/target/linux/ath79/image/generic-ubnt.mk @@ -177,6 +177,15 @@ define Device/ubnt_nanobeam-ac endef TARGET_DEVICES += ubnt_nanobeam-ac +define Device/ubnt_nanobridge-m + $(Device/ubnt-xm) + SOC := ar7241 + DEVICE_MODEL := NanoBridge M + DEVICE_PACKAGES += rssileds + SUPPORTED_DEVICES += bullet-m +endef +TARGET_DEVICES += ubnt_nanobridge-m + define Device/ubnt_nanostation-ac $(Device/ubnt-wa) DEVICE_MODEL := Nanostation AC