mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-28 01:28:59 +00:00
37 lines
692 B
Bash
37 lines
692 B
Bash
|
mac80211_phy_to_path() {
|
||
|
local phy="$1"
|
||
|
|
||
|
[ -x /usr/bin/readlink -a -h /sys/class/ieee80211/${phy} ] || return
|
||
|
|
||
|
local path="$(readlink -f /sys/class/ieee80211/${phy}/device)"
|
||
|
[ -n "$path" ] || return
|
||
|
|
||
|
path="${path##/sys/devices/}"
|
||
|
case "$path" in
|
||
|
platform*/pci*) path="${path##platform/}";;
|
||
|
esac
|
||
|
|
||
|
local p
|
||
|
local seq=""
|
||
|
for p in $(ls /sys/class/ieee80211/$phy/device/ieee80211); do
|
||
|
[ "$p" = "$phy" ] && {
|
||
|
echo "$path${seq:++$seq}"
|
||
|
break
|
||
|
}
|
||
|
|
||
|
seq=$((${seq:-0} + 1))
|
||
|
done
|
||
|
}
|
||
|
|
||
|
mac80211_path_to_phy() {
|
||
|
local path="$1"
|
||
|
|
||
|
local p
|
||
|
for p in $(ls /sys/class/ieee80211); do
|
||
|
local cur="$(mac80211_phy_to_path "$p")"
|
||
|
case "$cur" in
|
||
|
*$path) echo "$p"; return;;
|
||
|
esac
|
||
|
done
|
||
|
}
|