[PATCH 1/3] OpenWRT/fff-boardname: Add board detection for UBNT AC-Mesh
Adrian Schmutzler
freifunk at adrianschmutzler.de
Mo Mär 19 16:50:17 CET 2018
Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
This patch is independent of other unreviewed patches.
---
...71xx-add-board-detection-for-UBNT-AC-Mesh.patch | 61 ++++++++++++++++++++++
src/packages/fff/fff-boardname/Makefile | 2 +-
.../files/etc/uci-defaults/50-fff-boardname | 1 +
.../fff-network/ar71xx/network.ubnt-unifiac-mesh | 13 +++++
4 files changed, 76 insertions(+), 1 deletion(-)
create mode 100644 build_patches/openwrt/0030-ar71xx-add-board-detection-for-UBNT-AC-Mesh.patch
create mode 100644 src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-mesh
diff --git a/build_patches/openwrt/0030-ar71xx-add-board-detection-for-UBNT-AC-Mesh.patch b/build_patches/openwrt/0030-ar71xx-add-board-detection-for-UBNT-AC-Mesh.patch
new file mode 100644
index 0000000..fcbe0b6
--- /dev/null
+++ b/build_patches/openwrt/0030-ar71xx-add-board-detection-for-UBNT-AC-Mesh.patch
@@ -0,0 +1,61 @@
+From 5ec9f9f0164c04ae8edef1ed7945b8d685ee360c Mon Sep 17 00:00:00 2001
+From: David Bauer <mail at david-bauer.net>
+Date: Sun, 25 Feb 2018 12:09:38 +0100
+Subject: [PATCH] ar71xx: add board detection for UBNT AC-Mesh
+
+This commit adds correct model detection for UniFi
+AC-Mesh. Previously said device was incorrectly detected
+as UniFi AC-Lite.
+
+The Information about the device is stored at 0xC in the EEPROM
+partition. It corresponds to the sysid in /etc/board.info of the
+Ubiquiti stock firmware.
+
+Signed-off-by: David Bauer <mail at david-bauer.net>
+---
+ target/linux/ar71xx/base-files/lib/ar71xx.sh | 22 ++++++++++++++++++++++
+ 1 file changed, 22 insertions(+)
+
+diff --git a/target/linux/ar71xx/base-files/lib/ar71xx.sh b/target/linux/ar71xx/base-files/lib/ar71xx.sh
+index 58e92ab..ad96c3e 100755
+--- a/target/linux/ar71xx/base-files/lib/ar71xx.sh
++++ b/target/linux/ar71xx/base-files/lib/ar71xx.sh
+@@ -98,6 +98,27 @@ ubnt_xm_board_detect() {
+ [ -z "$model" ] || AR71XX_MODEL="${model}${magic:3:1}"
+ }
+
++ubnt_ac_lite_get_mtd_part_magic() {
++ ar71xx_get_mtd_offset_size_format EEPROM 12 2 %02x
++}
++
++ubnt_ac_lite_board_detect() {
++ local model
++ local magic
++
++ magic="$(ubnt_ac_lite_get_mtd_part_magic)"
++ case ${magic:0:4} in
++ "e517")
++ model="Ubiquiti UniFi-AC-LITE"
++ ;;
++ "e557")
++ model="Ubiquiti UniFi-AC-MESH"
++ ;;
++ esac
++
++ [ -z "$model" ] || AR71XX_MODEL="${model}"
++}
++
+ cybertan_get_hw_magic() {
+ local part
+
+@@ -1105,6 +1126,7 @@ ar71xx_board_detect() {
+ ;;
+ *"UniFi-AC-LITE")
+ name="unifiac-lite"
++ ubnt_ac_lite_board_detect
+ ;;
+ *"UniFi-AC-PRO")
+ name="unifiac-pro"
+--
+2.7.4
+
diff --git a/src/packages/fff/fff-boardname/Makefile b/src/packages/fff/fff-boardname/Makefile
index d7ccd00..6a48b3a 100644
--- a/src/packages/fff/fff-boardname/Makefile
+++ b/src/packages/fff/fff-boardname/Makefile
@@ -1,7 +1,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=fff-boardname
-PKG_VERSION:=5
+PKG_VERSION:=6
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
diff --git a/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
index db2f253..049f130 100644
--- a/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
+++ b/src/packages/fff/fff-boardname/files/etc/uci-defaults/50-fff-boardname
@@ -46,6 +46,7 @@ case "$BOARD" in
;;
unifiac-lite)
BOARD=ubnt-unifiac-lite
+ grep -i "MESH" /var/sysinfo/model && BOARD=ubnt-unifiac-mesh
;;
tl-wa850re)
BOARD=tl-wa850re-v1
diff --git a/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-mesh b/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-mesh
new file mode 100644
index 0000000..15efcb0
--- /dev/null
+++ b/src/packages/fff/fff-network/ar71xx/network.ubnt-unifiac-mesh
@@ -0,0 +1,13 @@
+WANDEV=eth0
+SWITCHDEV=eth0
+CLIENT_PORTS=""
+WAN_PORTS=""
+BATMAN_PORTS=""
+ONE_PORT="YES"
+
+. /etc/network.mode
+. /lib/functions/system.sh
+. /lib/functions/uci-defaults.sh
+. /lib/ar71xx.sh
+
+ROUTERMAC=$(mtd_get_mac_binary EEPROM 0x0)
\ No newline at end of file
--
2.7.4
Mehr Informationen über die Mailingliste franken-dev