aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorSujith Manoharan <Sujith.Manoharan@atheros.com>2011-04-27 07:26:51 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-04-28 14:53:19 -0400
commitbdbfd6b582f55384059d9ac5e65b3653092e6adf (patch)
treebca5492d67d2e4b210539ae9029f54568165f297 /include
parent8973a6e770fc891f92daacbc1c92c7cd396fcf7e (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')
-rw-r--r--include/net/mac80211.h6
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 */
1826struct ieee80211_ops { 1830struct 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/**