aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@openwrt.org>2013-11-11 21:57:26 +0000
committerHauke Mehrtens <hauke@openwrt.org>2013-11-11 21:57:26 +0000
commit8f00f8f0484fad506055670480b78bef9e43b05a (patch)
treeaf5860eb0a002e32a6c54795928949dd00e48d2f
parent0ae198695f5454864d933a3b452c9fbef2e30ca1 (diff)
downloadupstream-8f00f8f0484fad506055670480b78bef9e43b05a.tar.gz
upstream-8f00f8f0484fad506055670480b78bef9e43b05a.tar.bz2
upstream-8f00f8f0484fad506055670480b78bef9e43b05a.zip
broadcom-wl: change interface names
'netifd' treats all devices with a "." in their name as vlan devices. Modify the name of virtual/WDS interfaces created by broadcom-wl to use a "-" instead of a ".", so they will be treated as simple devices by 'netifd'. Signed-off-by: Nathan Hintz <nlhintz@hotmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38748 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/kernel/broadcom-wl/files/etc/hotplug.d/net/20-broadcom_wds2
-rw-r--r--package/kernel/broadcom-wl/files/lib/wifi/broadcom.sh4
-rw-r--r--package/kernel/broadcom-wl/patches/013-interface-name.patch11
3 files changed, 14 insertions, 3 deletions
diff --git a/package/kernel/broadcom-wl/files/etc/hotplug.d/net/20-broadcom_wds b/package/kernel/broadcom-wl/files/etc/hotplug.d/net/20-broadcom_wds
index 0a563c2dbd..4e56d21acf 100644
--- a/package/kernel/broadcom-wl/files/etc/hotplug.d/net/20-broadcom_wds
+++ b/package/kernel/broadcom-wl/files/etc/hotplug.d/net/20-broadcom_wds
@@ -56,6 +56,6 @@ setup_broadcom_wds() {
case "$ACTION" in
add|register)
- [ "${INTERFACE%%0.*}" = wds ] && setup_broadcom_wds "$INTERFACE"
+ [ "${INTERFACE%%0-*}" = wds ] && setup_broadcom_wds "$INTERFACE"
;;
esac
diff --git a/package/kernel/broadcom-wl/files/lib/wifi/broadcom.sh b/package/kernel/broadcom-wl/files/lib/wifi/broadcom.sh
index 4d81bcb1b4..506b077ef2 100644
--- a/package/kernel/broadcom-wl/files/lib/wifi/broadcom.sh
+++ b/package/kernel/broadcom-wl/files/lib/wifi/broadcom.sh
@@ -45,7 +45,7 @@ scan_broadcom() {
local _c=
for vif in ${adhoc_if:-$sta_if $ap_if $mon_if}; do
- config_set "$vif" ifname "${device}${_c:+.$_c}"
+ config_set "$vif" ifname "${device}${_c:+-$_c}"
_c=$((${_c:-0} + 1))
done
config_set "$device" vifs "${adhoc_if:-$sta_if $ap_if $mon_if}"
@@ -102,7 +102,7 @@ disable_broadcom() {
include /lib/network
# make sure the interfaces are down and removed from all bridges
- for dev in $device ${device}.1 ${device}.2 ${device}.3; do
+ for dev in $device ${device}-1 ${device}-2 ${device}-3; do
ifconfig "$dev" down 2>/dev/null >/dev/null && {
unbridge "$dev"
}
diff --git a/package/kernel/broadcom-wl/patches/013-interface-name.patch b/package/kernel/broadcom-wl/patches/013-interface-name.patch
new file mode 100644
index 0000000000..3a136de037
--- /dev/null
+++ b/package/kernel/broadcom-wl/patches/013-interface-name.patch
@@ -0,0 +1,11 @@
+--- a/driver/wl_linux.c
++++ b/driver/wl_linux.c
+@@ -1556,7 +1556,7 @@ wl_add_if(wl_info_t *wl, struct wlc_if*
+
+ wl_if_setup(wlif->dev);
+
+- sprintf(wlif->dev->name, "%s%d.%d", devname, wl->pub->unit, wlif->subunit);
++ sprintf(wlif->dev->name, "%s%d-%d", devname, wl->pub->unit, wlif->subunit);
+ if (remote)
+ bcopy(remote, &wlif->remote, ETHER_ADDR_LEN);
+