aboutsummaryrefslogtreecommitdiffstats
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
parentf1a447bdb5f25a61402f513e68a216a1ae8c7c97 (diff)
downloadupstream-7b5aeef6dbfae724fa4bef4edee49be389fd4a5e.tar.gz
upstream-7b5aeef6dbfae724fa4bef4edee49be389fd4a5e.tar.bz2
upstream-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>
-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 c448ac4e619..8c7d1dc9186 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 00000000000..bc01bdffb59
--- /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 9b9b217f243..00000000000
--- 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 c71cf11dd22..ba3ad5a8d06 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 e3592976614..fb02bb188a2 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 762a17b1778..11bd71ca3d1 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 978a05fed65..7199d184e9c 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 899f1677488..cd39410be59 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 00000000000..d54dbeba385
--- /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 ae6e3c4d307..525224bec91 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 70bfd95f9ec..01747acae00 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 68cef7d14b1..179de961be8 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