aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-02-13 06:11:00 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-03-18 15:15:03 -0400
commit39ecc01d1bbe3de2cf5f01a81e176ea5160d3b95 (patch)
tree1a75bf065c61f0870ff4d63eac6130998834748c /include
parenta0ca796c460259bc079631d2d148ffff1d1fc736 (diff)
mac80211: pass queue bitmap to flush operation
There are a number of situations in which mac80211 only really needs to flush queues for one virtual interface, and in fact during this frames might be transmitted on other virtual interfaces. Calculate and pass a queue bitmap to the driver so it knows which queues to flush. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include')
-rw-r--r--include/net/mac80211.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index 0b912d22f82d..4158da74e11b 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -2438,8 +2438,11 @@ enum ieee80211_roc_type {
2438 * @testmode_dump: Implement a cfg80211 test mode dump. The callback can sleep. 2438 * @testmode_dump: Implement a cfg80211 test mode dump. The callback can sleep.
2439 * 2439 *
2440 * @flush: Flush all pending frames from the hardware queue, making sure 2440 * @flush: Flush all pending frames from the hardware queue, making sure
2441 * that the hardware queues are empty. If the parameter @drop is set 2441 * that the hardware queues are empty. The @queues parameter is a bitmap
2442 * to %true, pending frames may be dropped. The callback can sleep. 2442 * of queues to flush, which is useful if different virtual interfaces
2443 * use different hardware queues; it may also indicate all queues.
2444 * If the parameter @drop is set to %true, pending frames may be dropped.
2445 * The callback can sleep.
2443 * 2446 *
2444 * @channel_switch: Drivers that need (or want) to offload the channel 2447 * @channel_switch: Drivers that need (or want) to offload the channel
2445 * switch operation for CSAs received from the AP may implement this 2448 * switch operation for CSAs received from the AP may implement this
@@ -2687,7 +2690,7 @@ struct ieee80211_ops {
2687 struct netlink_callback *cb, 2690 struct netlink_callback *cb,
2688 void *data, int len); 2691 void *data, int len);
2689#endif 2692#endif
2690 void (*flush)(struct ieee80211_hw *hw, bool drop); 2693 void (*flush)(struct ieee80211_hw *hw, u32 queues, bool drop);
2691 void (*channel_switch)(struct ieee80211_hw *hw, 2694 void (*channel_switch)(struct ieee80211_hw *hw,
2692 struct ieee80211_channel_switch *ch_switch); 2695 struct ieee80211_channel_switch *ch_switch);
2693 int (*napi_poll)(struct ieee80211_hw *hw, int budget); 2696 int (*napi_poll)(struct ieee80211_hw *hw, int budget);