ath79: add support for Ubiquiti Nanostation Loco M (XM)
authorSven Roederer <freifunk@it-solutions.geroedel.de>
Mon, 17 Feb 2020 11:22:53 +0000 (12:22 +0100)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Fri, 21 Feb 2020 13:12:30 +0000 (14:12 +0100)
This adds support for the Ubiquiti Nanostation Loco M (XM), which
has the same board/LEDs as the Bullet M XM, but different case and
antennas.

Specifications:
- AR7241 SoC @ 400 MHz
- 32 MB RAM
- 8 MB SPI flash
- 1x 10/100 Mbps Ethernet, 24 Vdc PoE-in
- NS Loco M2: built-in antenna: 8 dBi; AR9287
- NS Loco M5: built-in antenna: 13 dBi; 2T2R 5 GHz radio
- POWER/LAN green LEDs
- 4x RSSI LEDs (red, orange, green, green)
- UART (115200 8N1) on PCB

Flashing via WebUI:
  Upload the factory image via the stock firmware web UI.
  Note that only certain firmware versions accept unsigned
  images. Refer to the device's Wiki page for further information.

Flashing via TFTP:
  Same procedure as other NanoStation M boards.

- Use a pointy tool (e.g., pen cap, paper clip) and keep the reset
  button on the device or on the PoE supply pressed
- Power on the device via PoE (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_nanostation-loco-m-squashfs-factory.bin

Tested on NanoStation Loco M2.

Signed-off-by: Sven Roederer <freifunk@it-solutions.geroedel.de>
Co-developed-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
(cherry picked from commit b56bcfe3be40493daecf13a4080920de2994ff54)

target/linux/ath79/base-files/etc/board.d/01_leds
target/linux/ath79/base-files/etc/board.d/02_network
target/linux/ath79/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
target/linux/ath79/dts/ar7241_ubnt_nanostation-loco-m.dts [new file with mode: 0644]
target/linux/ath79/image/generic-ubnt.mk

index da092a5..c8b7541 100755 (executable)
@@ -200,6 +200,7 @@ tplink,tl-wr842n-v2)
        ;;
 ubnt,bullet-m|\
 ubnt,bullet-m-xw|\
+ubnt,nanostation-loco-m|\
 ubnt,nanostation-m|\
 ubnt,nanostation-m-xw|\
 ubnt,rocket-m)
index 2e77286..177666c 100755 (executable)
@@ -38,6 +38,7 @@ ath79_setup_interfaces()
        ubnt,lap-120|\
        ubnt,nanobeam-ac|\
        ubnt,nanostation-ac-loco|\
+       ubnt,nanostation-loco-m|\
        ubnt,rocket-m|\
        ubnt,unifiac-lite|\
        ubnt,unifiac-lr|\
index 8f9c74c..21a59ee 100644 (file)
@@ -173,6 +173,7 @@ case "$FIRMWARE" in
        tplink,tl-wr842n-v1|\
        ubnt,airrouter|\
        ubnt,bullet-m|\
+       ubnt,nanostation-loco-m|\
        ubnt,nanostation-m|\
        ubnt,rocket-m)
                ath9k_eeprom_extract "art" 4096 4096
diff --git a/target/linux/ath79/dts/ar7241_ubnt_nanostation-loco-m.dts b/target/linux/ath79/dts/ar7241_ubnt_nanostation-loco-m.dts
new file mode 100644 (file)
index 0000000..386b7c7
--- /dev/null
@@ -0,0 +1,13 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include "ar7241_ubnt_xm_outdoor.dtsi"
+
+/ {
+       compatible = "ubnt,nanostation-loco-m", "ubnt,xm", "qca,ar7241";
+       model = "Ubiquiti Nanostation Loco M";
+};
+
+&eth1 {
+       compatible = "syscon", "simple-mfd";
+};
index 12988d6..43be87e 100644 (file)
@@ -109,6 +109,14 @@ define Device/ubnt_rocket-m
 endef
 TARGET_DEVICES += ubnt_rocket-m
 
+define Device/ubnt_nanostation-loco-m
+  $(Device/ubnt-xm)
+  DEVICE_TITLE := Ubiquiti Nanostation Loco M
+  DEVICE_PACKAGES += rssileds
+  SUPPORTED_DEVICES += bullet-m
+endef
+TARGET_DEVICES += ubnt_nanostation-loco-m
+
 define Device/ubnt_nanostation-m
   $(Device/ubnt-xm)
   DEVICE_TITLE := Ubiquiti Nanostation M