[PATCH v4] ath79: add support for Ubiquiti PowerBeam M (XW)

Russell Senior russell at personaltelco.net
Sun Jun 13 20:33:24 PDT 2021


Is it time to apply this?

-- 
Russell Senior
russell at personaltelco.net

On Fri, Jun 4, 2021 at 5:29 PM Russell Senior <russell at personaltelco.net> wrote:
>
> This patch adds support for the Ubiquiti PowerBeam M (XW), e.g. PBE-M5-400,
> a 802.11n wireless with a feed+dish form factor. This device was previously
> supported by the ar71xx loco-m-xw firmware.
>
> Specifications:
>  - Atheros AR9342 SoC
>  - 64 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:
>  - Downgrade to AirOS v5.5.x (latest available is 5.5.10-u2) first (see
>    https://openwrt.org/toh/ubiquiti/powerbeam installation instructions)
>  - Upload the factory image via AirOS web GUI.
>
> Flashing via TFTP:
>  - Use a pointy tool (e.g., unbent paperclip) 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_powerbeam-m-xw-squashfs-factory.bin
>
> WARNING: so far, no non-destructive method has been discovered for
> opening the enclosure to reach the serial console. Internal photos
> are available here: https://fcc.io/SWX-NBM5HP
>
> since v1:
>  * renamed from ubnt,powerbeam-m to ubnt,powerbeam-m-xw
> since v2:
>  * removed redundant mtd-mac-address from dts
> since v3:
>  * based on testimony of Joe Ayers <joe at ayerscasa.com>:
>   * the bricking problem was resolved by 076d58d3440f (2016-02)
>   * the tftp flashing problem was resolved by 6009b3fd586a (2018-11)
>    so, removed the associated warnings.
>
> Signed-off-by: Russell Senior <russell at personaltelco.net>
> ---
>  .../ath79/dts/ar9342_ubnt_powerbeam-m-xw.dts  | 34 +++++++++++++++++++
>  .../generic/base-files/etc/board.d/01_leds    |  1 +
>  .../generic/base-files/etc/board.d/02_network |  1 +
>  target/linux/ath79/image/generic-ubnt.mk      |  8 +++++
>  4 files changed, 44 insertions(+)
>  create mode 100644 target/linux/ath79/dts/ar9342_ubnt_powerbeam-m-xw.dts
>
> diff --git a/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m-xw.dts
> new file mode 100644
> index 0000000000..6db058f887
> --- /dev/null
> +++ b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m-xw.dts
> @@ -0,0 +1,34 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
> +
> +#include "ar9342_ubnt_xw.dtsi"
> +
> +/ {
> +       compatible = "ubnt,powerbeam-m-xw", "ubnt,xw", "qca,ar9342";
> +       model = "Ubiquiti PowerBeam M (XW)";
> +};
> +
> +&mdio0 {
> +       status = "okay";
> +
> +       phy-mask = <4>;
> +
> +       phy4: ethernet-phy at 4 {
> +               reg = <4>;
> +       };
> +};
> +
> +&eth0 {
> +       status = "okay";
> +
> +       /* default for ar934x, except for 1000M and 10M */
> +       pll-data = <0x02000000 0x00000101 0x00001313>;
> +
> +       phy-mode = "rgmii-id";
> +       phy-handle = <&phy4>;
> +
> +       gmac-config {
> +               device = <&gmac>;
> +               rxd-delay = <3>;
> +               rxdv-delay = <3>;
> +       };
> +};
> 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 1990353394..35ce90aeb4 100644
> --- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds
> +++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds
> @@ -383,6 +383,7 @@ ubnt,nanostation-loco-m-xw|\
>  ubnt,nanostation-m|\
>  ubnt,nanostation-m-xw|\
>  ubnt,picostation-m|\
> +ubnt,powerbeam-m-xw|\
>  ubnt,powerbridge-m|\
>  ubnt,rocket-m)
>         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 4133b9d7d3..6e31cdac69 100644
> --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network
> +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network
> @@ -85,6 +85,7 @@ ath79_setup_interfaces()
>         ubnt,picostation-m|\
>         ubnt,powerbeam-5ac-500|\
>         ubnt,powerbeam-5ac-gen2|\
> +       ubnt,powerbeam-m-xw|\
>         ubnt,powerbridge-m|\
>         ubnt,rocket-m|\
>         ubnt,unifiac-lite|\
> diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk
> index 733d803d7a..5948e059e8 100644
> --- a/target/linux/ath79/image/generic-ubnt.mk
> +++ b/target/linux/ath79/image/generic-ubnt.mk
> @@ -328,6 +328,14 @@ define Device/ubnt_powerbeam-5ac-gen2
>  endef
>  TARGET_DEVICES += ubnt_powerbeam-5ac-gen2
>
> +define Device/ubnt_powerbeam-m-xw
> +  $(Device/ubnt-xw)
> +  DEVICE_MODEL := PowerBeam M
> +  DEVICE_PACKAGES += rssileds
> +  SUPPORTED_DEVICES += loco-m-xw
> +endef
> +TARGET_DEVICES += ubnt_powerbeam-m-xw
> +
>  define Device/ubnt_powerbridge-m
>    $(Device/ubnt-xm)
>    SOC := ar7241
> --
> 2.31.1
>



More information about the openwrt-devel mailing list