diff options
author | Johannes Berg <johannes.berg@intel.com> | 2014-11-18 18:10:42 -0500 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-11-19 13:15:50 -0500 |
commit | f815e2b3c0126c26911cac72b837f03a31c0c2ed (patch) | |
tree | a0ffb718bd301afbbee9d106f87e7b886dbc52f0 /include/net | |
parent | 8f894be2df9ad43d17763bc0201f7f303a91f091 (diff) |
mac80211: notify drivers on sta rate table changes
This allows drivers with a firmware or chip-based rate lookup table to
use the most recent default rate selection without having to get it from
per-packet data or explicit ieee80211_get_tx_rate calls
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/mac80211.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 7b889e3a2647..cff3a26a9dae 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h | |||
@@ -2695,6 +2695,9 @@ enum ieee80211_reconfig_type { | |||
2695 | * uses hardware rate control (%IEEE80211_HW_HAS_RATE_CONTROL) since | 2695 | * uses hardware rate control (%IEEE80211_HW_HAS_RATE_CONTROL) since |
2696 | * otherwise the rate control algorithm is notified directly. | 2696 | * otherwise the rate control algorithm is notified directly. |
2697 | * Must be atomic. | 2697 | * Must be atomic. |
2698 | * @sta_rate_tbl_update: Notifies the driver that the rate table changed. This | ||
2699 | * is only used if the configured rate control algorithm actually uses | ||
2700 | * the new rate table API, and is therefore optional. Must be atomic. | ||
2698 | * | 2701 | * |
2699 | * @conf_tx: Configure TX queue parameters (EDCF (aifs, cw_min, cw_max), | 2702 | * @conf_tx: Configure TX queue parameters (EDCF (aifs, cw_min, cw_max), |
2700 | * bursting) for a hardware TX queue. | 2703 | * bursting) for a hardware TX queue. |
@@ -3056,6 +3059,9 @@ struct ieee80211_ops { | |||
3056 | struct ieee80211_vif *vif, | 3059 | struct ieee80211_vif *vif, |
3057 | struct ieee80211_sta *sta, | 3060 | struct ieee80211_sta *sta, |
3058 | u32 changed); | 3061 | u32 changed); |
3062 | void (*sta_rate_tbl_update)(struct ieee80211_hw *hw, | ||
3063 | struct ieee80211_vif *vif, | ||
3064 | struct ieee80211_sta *sta); | ||
3059 | int (*conf_tx)(struct ieee80211_hw *hw, | 3065 | int (*conf_tx)(struct ieee80211_hw *hw, |
3060 | struct ieee80211_vif *vif, u16 ac, | 3066 | struct ieee80211_vif *vif, u16 ac, |
3061 | const struct ieee80211_tx_queue_params *params); | 3067 | const struct ieee80211_tx_queue_params *params); |