diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-11-04 21:53:49 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2009-11-04 21:53:49 +0000 |
commit | 244e2944c6b2f4efaf7d4375951ae2cf503823cd (patch) | |
tree | 238413bade28487194412c7890b678d81b05e41d | |
parent | 2394d9072728a39d0b72dbe62a4815fe0b2fc759 (diff) |
mac80211: fill some important capabilities into ht_capab in the hostapd config
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18293 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | package/hostapd/files/hostapd.sh | 3 | ||||
-rw-r--r-- | package/mac80211/files/lib/wifi/mac80211.sh | 13 |
2 files changed, 15 insertions, 1 deletions
diff --git a/package/hostapd/files/hostapd.sh b/package/hostapd/files/hostapd.sh index 0db5e0648b..2210a46aff 100644 --- a/package/hostapd/files/hostapd.sh +++ b/package/hostapd/files/hostapd.sh @@ -89,6 +89,9 @@ hostapd_setup_vif() { [ -n "$hwmode_11n" ] && { hwmode="$hwmode_11n" config_get ht_capab "$device" ht_capab + [ -n "$ht_capab" -a -n "${ht_capab%%\[*}" ] && { + ht_capab=`echo "[$ht_capab]" | sed -e 's, ,][,g'` + } } } cat > /var/run/hostapd-$ifname.conf <<EOF diff --git a/package/mac80211/files/lib/wifi/mac80211.sh b/package/mac80211/files/lib/wifi/mac80211.sh index 6c5359a1bb..bae9fb6d78 100644 --- a/package/mac80211/files/lib/wifi/mac80211.sh +++ b/package/mac80211/files/lib/wifi/mac80211.sh @@ -293,7 +293,17 @@ detect_mac80211() { done mode_11n="" mode_band="g" - iw phy "$dev" info | grep -q 'HT cap' && mode_11n="n" + ht_cap="$(iw phy "$dev" info | grep 'HT capabilities' | cut -d: -f2)" + ht_capab=""; + [ -n "$ht_cap" ] && { + mode_11n="n" + list=" list ht_capab" + [ "$(($ht_cap & 2))" -eq 1 ] && append ht_capab "$list LDPC" "$N" + [ "$(($ht_cap & 2))" -eq 2 ] && append ht_capab "$list HT40-" "$N" + [ "$(($ht_cap & 32))" -eq 32 ] && append ht_capab "$list SHORT-GI-20" "$N" + [ "$(($ht_cap & 64))" -eq 64 ] && append ht_capab "$list SHORT-GI-40" "$N" + [ "$(($ht_cap & 4096))" -eq 4096 ] && append ht_capab "$list DSSS_CCK-40" "$N" + } iw phy "$dev" info | grep -q '2412 MHz' || mode_band="a" cat <<EOF @@ -304,6 +314,7 @@ config wifi-device wifi$devidx option hwmode 11${mode_11n}${mode_band} # REMOVE THIS LINE TO ENABLE WIFI: option disabled 1 +$ht_capab config wifi-iface option device wifi$devidx |