diff options
author | Tomasz Maciej Nowak <tmn505@gmail.com> | 2020-11-23 15:17:30 +0100 |
---|---|---|
committer | Adrian Schmutzler <freifunk@adrianschmutzler.de> | 2020-11-25 13:58:29 +0100 |
commit | 4a243ae3329c19eaddffea42bed734e4eff852ad (patch) | |
tree | 317efe61ed779be57cc2ab210efed5a333bcd9d6 /target/linux/mvebu/cortexa9/base-files/etc/hotplug.d/ieee80211 | |
parent | 92b3efec54b36797614650c830a57c4f8786b5c9 (diff) | |
download | upstream-4a243ae3329c19eaddffea42bed734e4eff852ad.tar.gz upstream-4a243ae3329c19eaddffea42bed734e4eff852ad.tar.bz2 upstream-4a243ae3329c19eaddffea42bed734e4eff852ad.zip |
mvebu: base-files: move additional files to subtargets
Both of these scripts are only relevant to cortexa9, therefore move them
there.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
Diffstat (limited to 'target/linux/mvebu/cortexa9/base-files/etc/hotplug.d/ieee80211')
-rw-r--r-- | target/linux/mvebu/cortexa9/base-files/etc/hotplug.d/ieee80211/00-wifi-config-migrate | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/target/linux/mvebu/cortexa9/base-files/etc/hotplug.d/ieee80211/00-wifi-config-migrate b/target/linux/mvebu/cortexa9/base-files/etc/hotplug.d/ieee80211/00-wifi-config-migrate new file mode 100644 index 0000000000..a8173b3117 --- /dev/null +++ b/target/linux/mvebu/cortexa9/base-files/etc/hotplug.d/ieee80211/00-wifi-config-migrate @@ -0,0 +1,41 @@ +#!/bin/sh + +# The pcie-controller device was renamed to pcie in Linux kernel 4.14 +# commit 28fbb9c539e2 ("ARM: dts: marvell: fix PCI bus dtc warnings"). +# This script migrates the path in the UCI configuration from the old +# name to the new name and also back, when am upgrade or downgrade is +# done. It checks if the name exists before changing the configuration. +# This has to be done before the 10-wifi-detect script from mac80211 is +# executed because this would add the devices again under the new path +# name. + +. /lib/functions.sh + +PATH_CHANGED=0 + +rename_wifi_path() { + local path_old=$(uci get wireless.${1}.path) + local path_new=$(echo ${path_old} | sed "${2}") + + if [ -e "/sys/devices/platform/${path_new}" ] && [ ${path_old} != ${path_new} ] + then + uci set wireless.${1}.path=${path_new} + PATH_CHANGED=1 + fi +} + +rename_wifi_path_list() { + # migration from kernel 4.9 to 4.14 + rename_wifi_path $1 "s/soc:pcie-controller/soc:pcie/" + # migration from kernel 4.14 to 4.9 + rename_wifi_path $1 "s/soc:pcie/soc:pcie-controller/" +} + +[ "${ACTION}" = "add" ] && { + [ ! -e /etc/config/wireless ] && return + + config_load wireless + config_foreach rename_wifi_path_list wifi-device + + [ "$PATH_CHANGED" = "1" ] && uci commit wireless +} |