summaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorSamuele Longhi <agave@dracaena.it>2023-12-20 19:27:15 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2024-01-20 19:57:57 +0100
commit7b5aeef6dbfae724fa4bef4edee49be389fd4a5e (patch)
tree0668cccda7cebed11fffe80b086973ea8c4527ad /target
parentf1a447bdb5f25a61402f513e68a216a1ae8c7c97 (diff)
downloadopenwrt-7b5aeef6dbfae724fa4bef4edee49be389fd4a5e.tar.gz
openwrt-7b5aeef6dbfae724fa4bef4edee49be389fd4a5e.tar.bz2
openwrt-7b5aeef6dbfae724fa4bef4edee49be389fd4a5e.zip
ath79: generic: rework ar9342_ubnt_xw dtsi, and add support for Ubiquiti LiteBeam M5 (XW), Ubiquiti AirGrid M5 HP (XW), Ubiquiti PowerBeam M5 300 (XW)
Add support for Ubiquiti LiteBeam M5 (XW). The device was previously supported in ar71xx. See commit: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=d0988235dd277b9a832bbc4b2a100ac6e821f577 Add ALTX_MODEL for Ubiquiti AirGrid M5 HP (XW), Ubiquiti PowerBeam M5 300 (XW) in generic-ubnt.mk This models are identical (firmware-wise) to the already supported Ubiquiti Nanostation Loco M (XW) Add also Ubiquiti NanoBeam M5 to ALTX_MODEL of Ubiquiti Nanostation Loco M (XW) since it's another clone. Tested on: - Ubiquiti LiteBeam M5 (XW) - Ubiquiti PowerBeam M5 (XW) This also modify target/ath79/dts/ar9342_ubnt_xw.dtsi to use nvmem for calibration data Checked that the caldata size in the eeprom partition are actually 0x440 on: - Ubiquiti PowerBeam M5 (XW) - Ubiquiti Nanostation M5 (XW) - Ubiquiti LiteBeam M5 (XW) - Ubiquiti AirGrid M5 HP (XW) Signed-off-by: Samuele Longhi <agave@dracaena.it>
Diffstat (limited to 'target')
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_bullet-m-xw.dts2
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_litebeam-m5-xw.dts59
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_nanobeam-m5-xw.dts24
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts2
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_nanostation-m-xw.dts2
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_powerbeam-m2-xw.dts2
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_powerbeam-m5-xw.dts2
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_xw.dtsi39
-rw-r--r--target/linux/ath79/dts/ar9342_ubnt_xw_rssileds.dtsi43
-rw-r--r--target/linux/ath79/generic/base-files/etc/board.d/01_leds3
-rw-r--r--target/linux/ath79/generic/base-files/etc/board.d/02_network1
-rw-r--r--target/linux/ath79/image/generic-ubnt.mk29
12 files changed, 135 insertions, 73 deletions
diff --git a/target/linux/ath79/dts/ar9342_ubnt_bullet-m-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_bullet-m-xw.dts
index c448ac4e61..8c7d1dc918 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_bullet-m-xw.dts
+++ b/target/linux/ath79/dts/ar9342_ubnt_bullet-m-xw.dts
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "ar9342_ubnt_xw.dtsi"
+#include "ar9342_ubnt_xw_rssileds.dtsi"
/ {
compatible = "ubnt,bullet-m-xw", "ubnt,xw", "qca,ar9342";
diff --git a/target/linux/ath79/dts/ar9342_ubnt_litebeam-m5-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_litebeam-m5-xw.dts
new file mode 100644
index 0000000000..bc01bdffb5
--- /dev/null
+++ b/target/linux/ath79/dts/ar9342_ubnt_litebeam-m5-xw.dts
@@ -0,0 +1,59 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "ar9342_ubnt_xw.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+ compatible = "ubnt,litebeam-m5-xw", "qca,ar9342";
+ model = "Ubiquiti LiteBeam M5 (XW)";
+
+ aliases {
+ led-boot = &led_status;
+ led-running = &led_status;
+ led-upgrade = &led_status;
+ led-failsafe = &led_status;
+ label-mac-device = &wmac;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-lan {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_LAN;
+ gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+ };
+
+ led-wlan {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_WLAN;
+ linux,default-trigger = "phy0tpt";
+ gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+ };
+
+ led_status: led-power {
+ color = <LED_COLOR_ID_GREEN>;
+ function = LED_FUNCTION_POWER;
+ gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+ };
+ };
+};
+
+&mdio0 {
+ status = "okay";
+
+ phy1: ethernet-phy@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/dts/ar9342_ubnt_nanobeam-m5-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-m5-xw.dts
deleted file mode 100644
index 9b9b217f24..0000000000
--- a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-m5-xw.dts
+++ /dev/null
@@ -1,24 +0,0 @@
-// 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";
-
- phy1: ethernet-phy@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/dts/ar9342_ubnt_nanostation-loco-m-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts
index c71cf11dd2..ba3ad5a8d0 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts
+++ b/target/linux/ath79/dts/ar9342_ubnt_nanostation-loco-m-xw.dts
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "ar9342_ubnt_xw.dtsi"
+#include "ar9342_ubnt_xw_rssileds.dtsi"
/ {
compatible = "ubnt,nanostation-loco-m-xw", "ubnt,xw", "qca,ar9342";
diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanostation-m-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_nanostation-m-xw.dts
index e359297661..fb02bb188a 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_nanostation-m-xw.dts
+++ b/target/linux/ath79/dts/ar9342_ubnt_nanostation-m-xw.dts
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "ar9342_ubnt_xw.dtsi"
+#include "ar9342_ubnt_xw_rssileds.dtsi"
/ {
compatible = "ubnt,nanostation-m-xw", "ubnt,xw", "qca,ar9342";
diff --git a/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m2-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m2-xw.dts
index 762a17b177..11bd71ca3d 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m2-xw.dts
+++ b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m2-xw.dts
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "ar9342_ubnt_xw.dtsi"
+#include "ar9342_ubnt_xw_rssileds.dtsi"
/ {
compatible = "ubnt,powerbeam-m2-xw", "ubnt,xw", "qca,ar9342";
diff --git a/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m5-xw.dts b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m5-xw.dts
index 978a05fed6..7199d184e9 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m5-xw.dts
+++ b/target/linux/ath79/dts/ar9342_ubnt_powerbeam-m5-xw.dts
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-#include "ar9342_ubnt_xw.dtsi"
+#include "ar9342_ubnt_xw_rssileds.dtsi"
/ {
compatible = "ubnt,powerbeam-m5-xw", "ubnt,xw", "qca,ar9342";
diff --git a/target/linux/ath79/dts/ar9342_ubnt_xw.dtsi b/target/linux/ath79/dts/ar9342_ubnt_xw.dtsi
index 899f167748..cd39410be5 100644
--- a/target/linux/ath79/dts/ar9342_ubnt_xw.dtsi
+++ b/target/linux/ath79/dts/ar9342_ubnt_xw.dtsi
@@ -9,38 +9,6 @@
compatible = "ubnt,xw", "qca,ar9342";
model = "Ubiquiti Networks XW board";
- aliases {
- led-boot = &led_link4;
- led-running = &led_link4;
- led-upgrade = &led_link4;
- led-failsafe = &led_link4;
- label-mac-device = &wmac;
- };
-
- leds {
- compatible = "gpio-leds";
-
- link1 {
- label = "red:link1";
- gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
- };
-
- link2 {
- label = "orange:link2";
- gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
- };
-
- link3 {
- label = "green:link3";
- gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
- };
-
- led_link4: link4 {
- label = "green:link4";
- gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
- };
- };
-
keys {
compatible = "gpio-keys";
@@ -107,6 +75,10 @@
macaddr_art_0: macaddr@0 {
reg = <0x0 0x6>;
};
+
+ calibration_art_1000: calibration@1000 {
+ reg = <0x1000 0x440>;
+ };
};
};
};
@@ -116,7 +88,8 @@
&wmac {
status = "okay";
- mtd-cal-data = <&art 0x1000>;
+ nvmem-cells = <&calibration_art_1000>;
+ nvmem-cell-names = "calibration";
};
&eth0 {
diff --git a/target/linux/ath79/dts/ar9342_ubnt_xw_rssileds.dtsi b/target/linux/ath79/dts/ar9342_ubnt_xw_rssileds.dtsi
new file mode 100644
index 0000000000..d54dbeba38
--- /dev/null
+++ b/target/linux/ath79/dts/ar9342_ubnt_xw_rssileds.dtsi
@@ -0,0 +1,43 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "ar9342_ubnt_xw.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+ compatible = "ubnt,xw", "qca,ar9342";
+ model = "Ubiquiti Networks XW board";
+
+ aliases {
+ led-boot = &led_link4;
+ led-running = &led_link4;
+ led-upgrade = &led_link4;
+ led-failsafe = &led_link4;
+ label-mac-device = &wmac;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ link1 {
+ label = "red:link1";
+ gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
+ };
+
+ link2 {
+ label = "orange:link2";
+ gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+ };
+
+ link3 {
+ label = "green:link3";
+ gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+ };
+
+ led_link4: link4 {
+ label = "green:link4";
+ gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+ };
+ };
+};
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 ae6e3c4d30..525224bec9 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
@@ -27,7 +27,8 @@ pcs,cap324|\
tplink,cpe605-v1|\
tplink,cpe610-v1|\
tplink,cpe610-v2|\
-tplink,tl-wa1201-v2)
+tplink,tl-wa1201-v2|\
+ubnt,litebeam-m5-xw)
ucidef_set_led_netdev "lan" "LAN" "green:lan" "eth0"
;;
tplink,tl-wdr6500-v2)
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 70bfd95f9e..01747acae0 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
@@ -105,6 +105,7 @@ ath79_setup_interfaces()
ubnt,bullet-m-xw|\
ubnt,lap-120|\
ubnt,litebeam-ac-gen2|\
+ ubnt,litebeam-m5-xw|\
ubnt,nanobeam-ac|\
ubnt,nanobeam-ac-xc|\
ubnt,nanostation-ac-loco|\
diff --git a/target/linux/ath79/image/generic-ubnt.mk b/target/linux/ath79/image/generic-ubnt.mk
index 68cef7d14b..179de961be 100644
--- a/target/linux/ath79/image/generic-ubnt.mk
+++ b/target/linux/ath79/image/generic-ubnt.mk
@@ -62,6 +62,14 @@ define Device/ubnt_litebeam-ac-gen2
endef
TARGET_DEVICES += ubnt_litebeam-ac-gen2
+define Device/ubnt_litebeam-m5-xw
+ $(Device/ubnt-xw)
+ DEVICE_MODEL := LiteBeam M5
+ SUPPORTED_DEVICES += lbe-m5
+ DEVICE_PACKAGES := -kmod-usb2
+endef
+TARGET_DEVICES += ubnt_litebeam-m5-xw
+
define Device/ubnt_nanobeam-ac
$(Device/ubnt-wa)
DEVICE_MODEL := NanoBeam AC
@@ -87,14 +95,6 @@ define Device/ubnt_nanobeam-ac-xc
endef
TARGET_DEVICES += ubnt_nanobeam-ac-xc
-define Device/ubnt_nanobeam-m5-xw
- $(Device/ubnt-xw)
- DEVICE_MODEL := NanoBeam M5
- DEVICE_PACKAGES += rssileds
- SUPPORTED_DEVICES += loco-m-xw
-endef
-TARGET_DEVICES += ubnt_nanobeam-m5-xw
-
define Device/ubnt_nanostation-ac
$(Device/ubnt-wa)
DEVICE_MODEL := Nanostation AC
@@ -112,8 +112,17 @@ TARGET_DEVICES += ubnt_nanostation-ac-loco
define Device/ubnt_nanostation-loco-m-xw
$(Device/ubnt-xw)
DEVICE_MODEL := Nanostation Loco M
- DEVICE_PACKAGES += rssileds
- SUPPORTED_DEVICES += loco-m-xw
+ DEVICE_PACKAGES += rssileds -kmod-usb2
+ DEVICE_ALT0_VENDOR := Ubiquiti
+ DEVICE_ALT0_MODEL := AirGrid M5 HP
+ DEVICE_ALT0_VARIANT := XW
+ DEVICE_ALT1_VENDOR := Ubiquiti
+ DEVICE_ALT1_MODEL := PowerBeam M5 300
+ DEVICE_ALT1_VARIANT := XW
+ DEVICE_ALT2_VENDOR := Ubiquiti
+ DEVICE_ALT2_MODEL := NanoBeam M5
+ DEVICE_ALT2_VARIANT := XW
+ SUPPORTED_DEVICES += loco-m-xw nanostation-m-xw ubnt,nanobeam-m5-xw
endef
TARGET_DEVICES += ubnt_nanostation-loco-m-xw