diff options
author | Sujith Manoharan <Sujith.Manoharan@atheros.com> | 2011-04-27 07:26:51 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-04-28 14:53:19 -0400 |
commit | bdbfd6b582f55384059d9ac5e65b3653092e6adf (patch) | |
tree | bca5492d67d2e4b210539ae9029f54568165f297 /include/net/mac80211.h | |
parent | 8973a6e770fc891f92daacbc1c92c7cd396fcf7e (diff) |
mac80211: Add new API for rate selection
This patch adds a new API for setting a TX rate mask in
drivers that have rate control in either the firmware or hardware.
This can be used for various purposes, for example, masking out the
11b rates in P2P operation.
Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net/mac80211.h')
-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 8aad6b37c689..63f75a06043b 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h | |||
@@ -1822,6 +1822,10 @@ enum ieee80211_ampdu_mlme_action { | |||
1822 | * | 1822 | * |
1823 | * @tx_frames_pending: Check if there is any pending frame in the hardware | 1823 | * @tx_frames_pending: Check if there is any pending frame in the hardware |
1824 | * queues before entering power save. | 1824 | * queues before entering power save. |
1825 | * | ||
1826 | * @set_bitrate_mask: Set a mask of rates to be used for rate control selection | ||
1827 | * when transmitting a frame. Currently only legacy rates are handled. | ||
1828 | * The callback can sleep. | ||
1825 | */ | 1829 | */ |
1826 | struct ieee80211_ops { | 1830 | struct ieee80211_ops { |
1827 | void (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb); | 1831 | void (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb); |
@@ -1910,6 +1914,8 @@ struct ieee80211_ops { | |||
1910 | void (*get_ringparam)(struct ieee80211_hw *hw, | 1914 | void (*get_ringparam)(struct ieee80211_hw *hw, |
1911 | u32 *tx, u32 *tx_max, u32 *rx, u32 *rx_max); | 1915 | u32 *tx, u32 *tx_max, u32 *rx, u32 *rx_max); |
1912 | bool (*tx_frames_pending)(struct ieee80211_hw *hw); | 1916 | bool (*tx_frames_pending)(struct ieee80211_hw *hw); |
1917 | int (*set_bitrate_mask)(struct ieee80211_hw *hw, struct ieee80211_vif *vif, | ||
1918 | const struct cfg80211_bitrate_mask *mask); | ||
1913 | }; | 1919 | }; |
1914 | 1920 | ||
1915 | /** | 1921 | /** |