diff options
author | John Crispin <blogic@openwrt.org> | 2015-01-28 12:07:21 +0000 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2015-01-28 12:07:21 +0000 |
commit | 77f1d3bad8c8433ed737bd5090d9bce0a39e365c (patch) | |
tree | ccaecd1f7473d911970988813a81aa0900d69e01 /package/kernel/mac80211 | |
parent | 49ec79e12616a1b221acef6a1bf111c86fc329c5 (diff) | |
download | upstream-77f1d3bad8c8433ed737bd5090d9bce0a39e365c.tar.gz upstream-77f1d3bad8c8433ed737bd5090d9bce0a39e365c.tar.bz2 upstream-77f1d3bad8c8433ed737bd5090d9bce0a39e365c.zip |
mac80211: Add some missing 802.11n capabilities to hostapd configuration
Add some missing 802.11n capabilities to the hostapd ht_capab string when
supported by the hardware: Spatial Multiplexing Power-Save and 7935-byte AMSDUs.
Signed-off-by: Robert Hancock <hancockrwd@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44173 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/kernel/mac80211')
-rw-r--r-- | package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh index 1a85d15ed6..72f9936b40 100644 --- a/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh +++ b/package/kernel/mac80211/files/lib/netifd/wireless/mac80211.sh @@ -42,6 +42,8 @@ drv_mac80211_init_device_config() { greenfield \ short_gi_20 \ short_gi_40 \ + smps \ + max_amsdu \ dsss_cck_40 } @@ -130,8 +132,10 @@ mac80211_hostapd_setup_base() { greenfield:0 \ short_gi_20:1 \ short_gi_40:1 \ + smps:1 \ tx_stbc:1 \ rx_stbc:3 \ + max_amsdu:1 \ dsss_cck_40:1 ht_cap_mask=0 @@ -139,6 +143,8 @@ mac80211_hostapd_setup_base() { ht_cap_mask="$(($ht_cap_mask | $cap))" done + cap_smps=$((($ht_cap_mask >> 2) & 3)) + cap_rx_stbc=$((($ht_cap_mask >> 8) & 3)) [ "$rx_stbc" -lt "$cap_rx_stbc" ] && cap_rx_stbc="$rx_stbc" ht_cap_mask="$(( ($ht_cap_mask & ~(0x300)) | ($cap_rx_stbc << 8) ))" @@ -152,8 +158,13 @@ mac80211_hostapd_setup_base() { RX-STBC1:0x300:0x100:1 \ RX-STBC12:0x300:0x200:1 \ RX-STBC123:0x300:0x300:1 \ + MAX-AMSDU-7935:0x800::$max_amsdu \ DSSS_CCK-40:0x1000::$dsss_cck_40 + # SM Power Save: 0=static, 1=dynamic, 3=disabled + [ "$smps" = 1 -a "$cap_smps" = 0 ] && ht_capab_flags="$ht_capab_flags[SMPS-STATIC]" + [ "$smps" = 1 -a "$cap_smps" = 1 ] && ht_capab_flags="$ht_capab_flags[SMPS-DYNAMIC]" + ht_capab="$ht_capab$ht_capab_flags" [ -n "$ht_capab" ] && append base_cfg "ht_capab=$ht_capab" "$N" } |