From 4edadfb997824e93d34c6b76dbbe03821026ee23 Mon Sep 17 00:00:00 2001 From: Roger Pueyo Centelles Date: Wed, 18 Sep 2019 15:17:56 +0200 Subject: [PATCH] ath79: add support for Ubiquiti NanoStation Loco M (XW) This commit adds support for the NanoStation Loco M2/M5 XW devices on the ath79 target (support was long ago available on ar71xx). Specifications: - AR9342 SoC @ 535 MHz - 64 MB RAM - 8 MB SPI flash - 1x 10/100 Mbps Ethernet, 24 Vdc PoE-in - AR8032 switch - 2T2R 5 GHz radio, 22 dBm - 13 dBi built-in antenna - POWER/LAN green LEDs - 4x RSSI LEDs (red, orange, green, green) - UART (115200 8N1) on PCB Flashing via TFTP: - 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-xw-squashfs-factory.bin Signed-off-by: Roger Pueyo Centelles (backported from commit 633c4304ad42d18d180ba65a264ba668de445d91) Signed-off-by: Adrian Schmutzler --- .../ath79/base-files/etc/board.d/01_leds | 1 + .../ath79/base-files/etc/board.d/02_network | 1 + .../dts/ar9342_ubnt_nanostation-loco-m-xw.dts | 29 +++++++++++++++++++ target/linux/ath79/image/generic-ubnt.mk | 8 +++++ 4 files changed, 39 insertions(+) create mode 100644 target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts diff --git a/target/linux/ath79/base-files/etc/board.d/01_leds b/target/linux/ath79/base-files/etc/board.d/01_leds index f600c6f779..dd483c0526 100755 --- a/target/linux/ath79/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/base-files/etc/board.d/01_leds @@ -201,6 +201,7 @@ tplink,tl-wr842n-v2) ubnt,bullet-m|\ ubnt,bullet-m-xw|\ ubnt,nanostation-loco-m|\ +ubnt,nanostation-loco-m-xw|\ ubnt,nanostation-m|\ ubnt,nanostation-m-xw|\ ubnt,picostation-m|\ diff --git a/target/linux/ath79/base-files/etc/board.d/02_network b/target/linux/ath79/base-files/etc/board.d/02_network index 3df6fde229..c985a823c4 100755 --- a/target/linux/ath79/base-files/etc/board.d/02_network +++ b/target/linux/ath79/base-files/etc/board.d/02_network @@ -39,6 +39,7 @@ ath79_setup_interfaces() ubnt,nanobeam-ac|\ ubnt,nanostation-ac-loco|\ ubnt,nanostation-loco-m|\ + ubnt,nanostation-loco-m-xw|\ ubnt,picostation-m|\ ubnt,rocket-m|\ ubnt,unifiac-lite|\ diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts new file mode 100644 index 0000000000..8fb05eda24 --- /dev/null +++ b/target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts @@ -0,0 +1,29 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include +#include + +#include "ar9342_ubnt_xw.dtsi" + +/ { + compatible = "ubnt,nanostation-loco-m-xw", "ubnt,xw", "qca,ar9342"; + model = "Ubiquiti Nanostation Loco M (XW)"; +}; + +&mdio0 { + status = "okay"; + + phy-mask = <0x1>; + + phy1: ethernet-phy@1 { + reg = <1>; + phy-mode = "mii"; + }; +}; + +ð0 { + status = "okay"; + + phy-handle = <&phy1>; +}; diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk index 1ae16554bc..f34ffa1612 100644 --- a/target/linux/ath79/image/generic-ubnt.mk +++ b/target/linux/ath79/image/generic-ubnt.mk @@ -125,6 +125,14 @@ define Device/ubnt_nanostation-loco-m endef TARGET_DEVICES += ubnt_nanostation-loco-m +define Device/ubnt_nanostation-loco-m-xw + $(Device/ubnt-xw) + DEVICE_TITLE := Ubiquiti Nanostation Loco M (XW) + DEVICE_PACKAGES += rssileds + SUPPORTED_DEVICES += loco-m-xw +endef +TARGET_DEVICES += ubnt_nanostation-loco-m-xw + define Device/ubnt_nanostation-m $(Device/ubnt-xm) DEVICE_TITLE := Ubiquiti Nanostation M