mac80211: minstrel: make short preamble CCK available when not used at connect time

The BSS short preamble state can change without rate control
update notification.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
openwrt-18.06
Felix Fietkau 2018-03-08 22:54:20 +01:00
parent 6011f7bcf0
commit 916277a033
1 changed files with 12 additions and 4 deletions

View File

@ -11,13 +11,21 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/mac80211/rc80211_minstrel_ht.c --- a/net/mac80211/rc80211_minstrel_ht.c
+++ b/net/mac80211/rc80211_minstrel_ht.c +++ b/net/mac80211/rc80211_minstrel_ht.c
@@ -1268,7 +1268,8 @@ minstrel_ht_update_caps(void *priv, stru @@ -1135,7 +1135,6 @@ minstrel_ht_update_caps(void *priv, stru
struct ieee80211_mcs_info *mcs = &sta->ht_cap.mcs;
u16 ht_cap = sta->ht_cap.cap;
struct ieee80211_sta_vht_cap *vht_cap = &sta->vht_cap;
- struct sta_info *sinfo = container_of(sta, struct sta_info, sta);
int use_vht;
int n_supported = 0;
int ack_dur;
@@ -1267,8 +1266,7 @@ minstrel_ht_update_caps(void *priv, stru
if (!n_supported)
goto use_legacy; goto use_legacy;
if (test_sta_flag(sinfo, WLAN_STA_SHORT_PREAMBLE)) - if (test_sta_flag(sinfo, WLAN_STA_SHORT_PREAMBLE))
- mi->cck_supported_short |= mi->cck_supported_short << 4; - mi->cck_supported_short |= mi->cck_supported_short << 4;
+ mi->supported[MINSTREL_CCK_GROUP] |= + mi->supported[MINSTREL_CCK_GROUP] |= mi->cck_supported_short << 4;
+ mi->cck_supported_short << 4;
/* create an initial rate table with the lowest supported rates */ /* create an initial rate table with the lowest supported rates */
minstrel_ht_update_stats(mp, mi); minstrel_ht_update_stats(mp, mi);