From 82571e3fee6cd0d1f7f1e01e886783ccf44d6b25 Mon Sep 17 00:00:00 2001
From: David Bauer <mail@david-bauer.net>
Date: Sat, 18 Jun 2022 02:41:22 +0200
Subject: [PATCH] ramips: add MT7621 WiFi devpath migration

Add a migration script to migrate the device path of PCIe WiFi hardware
from OpenWrt 19.07 to the one used with OpenWrt 21.02+.

Signed-off-by: David Bauer <mail@david-bauer.net>
---
 ...ps-add-MT7621-WiFi-devpath-migration.patch | 53 +++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 patches/openwrt/0005-ramips-add-MT7621-WiFi-devpath-migration.patch

diff --git a/patches/openwrt/0005-ramips-add-MT7621-WiFi-devpath-migration.patch b/patches/openwrt/0005-ramips-add-MT7621-WiFi-devpath-migration.patch
new file mode 100644
index 000000000..5e02c7804
--- /dev/null
+++ b/patches/openwrt/0005-ramips-add-MT7621-WiFi-devpath-migration.patch
@@ -0,0 +1,53 @@
+From: David Bauer <mail@david-bauer.net>
+Date: Sat, 18 Jun 2022 02:37:56 +0200
+Subject: ramips: add MT7621 WiFi devpath migration
+
+Add a migration script to migrate the device path of PCIe WiFi hardware
+from OpenWrt 19.07 to the one used with OpenWrt 21.02+.
+
+Signed-off-by: David Bauer <mail@david-bauer.net>
+
+diff --git a/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/00-wifi-migration b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/00-wifi-migration
+new file mode 100644
+index 0000000000000000000000000000000000000000..17fd4a58ff2d56694743e149292746c136b6f27a
+--- /dev/null
++++ b/target/linux/ramips/mt7621/base-files/etc/hotplug.d/ieee80211/00-wifi-migration
+@@ -0,0 +1,38 @@
++#!/bin/sh
++
++# Migrate WiFi path from 19.07 to 21.02+
++
++WIFI_PATH_CHANGED=0
++
++. /lib/functions.sh
++
++migrate_wifi_path() {
++	local section="$1"
++	local path
++
++	config_get path ${section} path
++	case ${path} in
++		"pci0000:00/0000:00:00.0/0000:01:00.0")
++			path="1e140000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0"
++			WIFI_PATH_CHANGED=1
++		;;
++		"pci0000:00/0000:00:01.0/0000:02:00.0")
++			path="1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0"
++			WIFI_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_wifi_path wifi-device
++
++	[ "${WIFI_PATH_CHANGED}" = "1" ] && uci commit wireless
++}
-- 
GitLab