diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-04-22 16:14:41 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-04-22 16:16:41 +0200 |
commit | 0d528d85c519b755b6f4e1bafa3a39984370e1c1 (patch) | |
tree | 5afbdbf16e1ae3d4bf698cf4031032cca220f4b0 /net/mac80211/ieee80211_i.h | |
parent | 5de17984898c5758fc6ebe08eccea9f4b6548914 (diff) | |
download | blackbird-op-linux-0d528d85c519b755b6f4e1bafa3a39984370e1c1.tar.gz blackbird-op-linux-0d528d85c519b755b6f4e1bafa3a39984370e1c1.zip |
mac80211: improve the rate control API
Allow rate control modules to pass a rate selection table to mac80211
and the driver. This allows drivers to fetch the most recent rate
selection from the sta pointer for already buffered frames. This allows
rate control to respond faster to sudden link changes and it is also a
step towards adding minstrel_ht support to drivers like iwlwifi.
When a driver sets IEEE80211_HW_SUPPORTS_RC_TABLE, mac80211 will not
fill info->control.rates with rates from the rate table (to preserve
explicit overrides by the rate control module). The driver then
explicitly calls ieee80211_get_tx_rates to merge overrides from
info->control.rates with defaults from the sta rate table.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index af8410e1291e..158e6eb188d3 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h @@ -156,6 +156,7 @@ struct ieee80211_tx_data { struct ieee80211_sub_if_data *sdata; struct sta_info *sta; struct ieee80211_key *key; + struct ieee80211_tx_rate rate; unsigned int flags; }; |