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>

SVN-Revision: 38748
This commit is contained in:
Hauke Mehrtens 2013-11-11 21:57:26 +00:00
parent c36d24ec82
commit cac4ccca2f
3 changed files with 14 additions and 3 deletions

View File

@ -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

View File

@ -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"
}

View File

@ -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);