broadcom-wl: implement "hwmode" uci option, supports 11b (B only), 11g (G only), 11gst (G performance) and 11bg (default)
SVN-Revision: 20740
This commit is contained in:
		@@ -128,6 +128,7 @@ enable_broadcom() {
 | 
			
		||||
	config_get txpower "$device" txpower
 | 
			
		||||
	config_get frag "$device" frag
 | 
			
		||||
	config_get rts "$device" rts
 | 
			
		||||
	config_get hwmode "$device" hwmode
 | 
			
		||||
	local vif_pre_up vif_post_up vif_do_up vif_txpower
 | 
			
		||||
	local doth=0
 | 
			
		||||
	local wmm=0
 | 
			
		||||
@@ -159,6 +160,13 @@ enable_broadcom() {
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
 | 
			
		||||
	case "$hwmode" in
 | 
			
		||||
		*b)   hwmode=0;;
 | 
			
		||||
		*g)   hwmode=2;;
 | 
			
		||||
		*gst) hwmode=4;;
 | 
			
		||||
		*)    hwmode=1;;
 | 
			
		||||
	esac
 | 
			
		||||
 | 
			
		||||
	for vif in $vifs; do
 | 
			
		||||
		config_get vif_txpower "$vif" txpower
 | 
			
		||||
 | 
			
		||||
@@ -290,6 +298,7 @@ enable_broadcom() {
 | 
			
		||||
	wlc ifname "$device" stdin <<EOF
 | 
			
		||||
$ifdown
 | 
			
		||||
 | 
			
		||||
gmode ${hwmode:-1}
 | 
			
		||||
apsta $apsta
 | 
			
		||||
ap $ap
 | 
			
		||||
${mssid:+mssid $mssid}
 | 
			
		||||
 
 | 
			
		||||
@@ -919,6 +919,13 @@ static const struct wlc_call wlc_calls[] = {
 | 
			
		||||
		.handler = wlc_maclist,
 | 
			
		||||
		.desc = "MACs of associated stations"
 | 
			
		||||
	},
 | 
			
		||||
	{
 | 
			
		||||
		.name = "gmode",
 | 
			
		||||
		.param = INT,
 | 
			
		||||
		.data.num = ((WLC_GET_GMODE << 16) | WLC_SET_GMODE),
 | 
			
		||||
		.handler = wlc_ioctl,
 | 
			
		||||
		.desc = "G Mode"
 | 
			
		||||
	},
 | 
			
		||||
};
 | 
			
		||||
#define wlc_calls_size (sizeof(wlc_calls) / sizeof(struct wlc_call))
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user