diff options
author | Karl Beldan <karl.beldan@rivierawaves.com> | 2014-10-20 09:45:59 -0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-10-20 15:39:35 -0400 |
commit | d4d141cae804a430054f4138fa177229114f203a (patch) | |
tree | 1828efa7c0fdd3fa3a7e697b885ce71ed81b08af /net/mac80211/rc80211_minstrel_ht.h | |
parent | 8fa74e3aa6398ffef3c52147c969c0f5f0a1244e (diff) |
mac80211: minstrel_ht: Increase the range of handled rate indexes
Since 5935839ad735 ("mac80211: improve minstrel_ht rate sorting by
throughput & probability"), the rate indexes are manipulated via u8's
and hence allow for a maximum of 256 mcs_group entries in
minstrel_mcs_groups.
ATM, minstrel_ht advertizes support up to 3HTSS@40MHz, consuming:
8(MCS_GROUP_RATES) * (3(SS)*2(GI)*2(BW)+1(CCK)), i.e. 104 entries.
Support for 3VHTSS@80MHz will require:
10(MCS_GROUP_RATES) * (3(SS)*2(GI)*2(BW)+1(CCK)) +
10(MCS_GROUP_RATES) * (3(SS)*2(GI)*3(BW)), i.e. 130 + 180 entries.
This change moves from u8s to u16s where necessary.
Signed-off-by: Karl Beldan <karl.beldan@rivierawaves.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/rc80211_minstrel_ht.h')
-rw-r--r-- | net/mac80211/rc80211_minstrel_ht.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/mac80211/rc80211_minstrel_ht.h b/net/mac80211/rc80211_minstrel_ht.h index 01570e0e014b..8b54e894b197 100644 --- a/net/mac80211/rc80211_minstrel_ht.h +++ b/net/mac80211/rc80211_minstrel_ht.h | |||
@@ -34,8 +34,8 @@ struct minstrel_mcs_group_data { | |||
34 | u8 supported; | 34 | u8 supported; |
35 | 35 | ||
36 | /* sorted rate set within a MCS group*/ | 36 | /* sorted rate set within a MCS group*/ |
37 | u8 max_group_tp_rate[MAX_THR_RATES]; | 37 | u16 max_group_tp_rate[MAX_THR_RATES]; |
38 | u8 max_group_prob_rate; | 38 | u16 max_group_prob_rate; |
39 | 39 | ||
40 | /* MCS rate statistics */ | 40 | /* MCS rate statistics */ |
41 | struct minstrel_rate_stats rates[MCS_GROUP_RATES]; | 41 | struct minstrel_rate_stats rates[MCS_GROUP_RATES]; |
@@ -52,8 +52,8 @@ struct minstrel_ht_sta { | |||
52 | unsigned int avg_ampdu_len; | 52 | unsigned int avg_ampdu_len; |
53 | 53 | ||
54 | /* overall sorted rate set */ | 54 | /* overall sorted rate set */ |
55 | u8 max_tp_rate[MAX_THR_RATES]; | 55 | u16 max_tp_rate[MAX_THR_RATES]; |
56 | u8 max_prob_rate; | 56 | u16 max_prob_rate; |
57 | 57 | ||
58 | /* time of last status update */ | 58 | /* time of last status update */ |
59 | unsigned long stats_update; | 59 | unsigned long stats_update; |