[OpenWrt-Devel] [PATCH 2/4] ath79: qca955x: add wmac migration hotplug event

Tomasz Maciej Nowak tomek_n at o2.pl
Wed Mar 13 12:44:22 EDT 2019


When upgrading from ar71xx target images to ath79 based ones, the
integrated wireless interface changes its sysfs path. Therefore the
previous enabled wireless interface will be disabled, which can cause
false complains about it not working. This commit adds hotplug event
which migrates to new path and will keep the wrireless interface
enabled after upgrade.

Signed-off-by: Tomasz Maciej Nowak <tomek_n at o2.pl>
---
 .../etc/hotplug.d/ieee80211/00-wmac-migration | 32 +++++++++++++++++++
 1 file changed, 32 insertions(+)
 create mode 100644 target/linux/ath79/base-files/etc/hotplug.d/ieee80211/00-wmac-migration

diff --git a/target/linux/ath79/base-files/etc/hotplug.d/ieee80211/00-wmac-migration b/target/linux/ath79/base-files/etc/hotplug.d/ieee80211/00-wmac-migration
new file mode 100644
index 0000000000..b86db0dbcc
--- /dev/null
+++ b/target/linux/ath79/base-files/etc/hotplug.d/ieee80211/00-wmac-migration
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+WMAC_PATH_CHANGED=0
+
+. /lib/functions.sh
+
+migrate_wmac_path() {
+	local section="$1"
+	local path
+
+	config_get path ${section} path
+	case ${path} in
+		"platform/qca955x_wmac")
+			path="platform/ahb/ahb:apb/18100000.wmac"
+			WMAC_PATH_CHANGED=1
+		;;
+		*)
+			return 0
+		;;
+	esac
+
+	uci set wireless.${section}.path=${path}
+}
+
+[ "${ACTION}" = "add" ] && {
+	[ ! -e /etc/config/wireless ] && return 0
+
+	config_load wireless
+	config_foreach migrate_wmac_path wifi-device
+
+	[ "${WMAC_PATH_CHANGED}" = "1" ] && uci commit wireless
+}
-- 
2.21.0


_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list