X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=package%2Fbroadcom-wl%2Ffiles%2Flib%2Fwifi%2Fbroadcom.sh;h=e0d741b952fdc29cdce205f57639a96311d1f2ce;hp=e236a0679525002c7688793b5076999af7256ad1;hb=2b1ebf3b194aeb260cec521b7f822dd115e78058;hpb=61bbf1f29183ea657817b928d4c9366568d3eec8 diff --git a/package/broadcom-wl/files/lib/wifi/broadcom.sh b/package/broadcom-wl/files/lib/wifi/broadcom.sh index e236a06795..e0d741b952 100644 --- a/package/broadcom-wl/files/lib/wifi/broadcom.sh +++ b/package/broadcom-wl/files/lib/wifi/broadcom.sh @@ -5,10 +5,12 @@ scan_broadcom() { local wds local adhoc sta apmode mon local adhoc_if sta_if ap_if mon_if + local _c=0 config_get vifs "$device" vifs for vif in $vifs; do config_get mode "$vif" mode + _c=$(($_c + 1)) case "$mode" in adhoc) adhoc=1 @@ -53,7 +55,11 @@ scan_broadcom() { ap=1 infra=1 - mssid=1 + if [ "$_c" -gt 1 ]; then + mssid=1 + else + mssid= + fi apsta=0 radio=1 monitor=0 @@ -111,12 +117,13 @@ enable_broadcom() { config_get vifs "$device" vifs config_get distance "$device" distance config_get slottime "$device" slottime - config_get rxant "$device" rxant - config_get txant "$device" txant + config_get rxantenna "$device" rxantenna + config_get txantenna "$device" txantenna config_get_bool frameburst "$device" frameburst config_get macfilter "$device" macfilter config_get maclist "$device" maclist - local vif_pre_up vif_post_up vif_do_up + config_get macaddr "$device" macaddr + local vif_pre_up vif_post_up vif_do_up txpower _c=0 nas="$(which nas)" @@ -145,9 +152,12 @@ enable_broadcom() { esac for vif in $vifs; do + config_get txpower "$vif" txpower + config_get mode "$vif" mode append vif_pre_up "vif $_c" "$N" append vif_post_up "vif $_c" "$N" + append vif_do_up "vif $_c" "$N" [ "$mode" = "sta" ] || { config_get_bool hidden "$vif" hidden 0 @@ -227,6 +237,7 @@ enable_broadcom() { config_get ifname "$vif" ifname #append if_up "ifconfig $ifname up" ";$N" + local net_cfg bridge net_cfg="$(find_net_config "$vif")" [ -z "$net_cfg" ] || { @@ -262,8 +273,8 @@ infra $infra ${wet:+wet 1} 802.11d 0 802.11h 0 -rxant ${rxant:-3} -txant ${txant:-3} +rxant ${rxantenna:-3} +txant ${txantenna:-3} monitor ${monitor:-0} passive ${passive:-0} @@ -286,6 +297,8 @@ EOF wlc stdin <