summaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2013-04-22 16:14:41 +0200
committerJohannes Berg <johannes.berg@intel.com>2013-04-22 16:16:41 +0200
commit0d528d85c519b755b6f4e1bafa3a39984370e1c1 (patch)
tree5afbdbf16e1ae3d4bf698cf4031032cca220f4b0 /net/mac80211/ieee80211_i.h
parent5de17984898c5758fc6ebe08eccea9f4b6548914 (diff)
downloadblackbird-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.h1
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;
};
OpenPOWER on IntegriCloud