aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/mac80211.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2009-12-23 07:15:32 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-12-28 16:54:51 -0500
commita80f7c0b088187c8471b441d461e937991870661 (patch)
treef673c08009a03f2e988a638510b112a5584bea11 /include/net/mac80211.h
parent9607e6b66a0d25ca63b70d54a4283fa13d8f7c9d (diff)
mac80211: introduce flush operation
We've long lacked a good confirmation that frames have really gone out, e.g. before going off-channel for a scan. Add a flush() operation that drivers can implement to provide that confirmation, and use it in a few places: * before scanning sends the nullfunc frames * after scanning sends the nullfunc frames, if any * when going idle, to send any pending frames Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'include/net/mac80211.h')
-rw-r--r--include/net/mac80211.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h
index 494ac69ff477..77ea34b03285 100644
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -1545,6 +1545,10 @@ enum ieee80211_ampdu_mlme_action {
1545 * and need to call wiphy_rfkill_set_hw_state() in the callback. 1545 * and need to call wiphy_rfkill_set_hw_state() in the callback.
1546 * 1546 *
1547 * @testmode_cmd: Implement a cfg80211 test mode command. 1547 * @testmode_cmd: Implement a cfg80211 test mode command.
1548 *
1549 * @flush: Flush all pending frames from the hardware queue, making sure
1550 * that the hardware queues are empty. If the parameter @drop is set
1551 * to %true, pending frames may be dropped.
1548 */ 1552 */
1549struct ieee80211_ops { 1553struct ieee80211_ops {
1550 int (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb); 1554 int (*tx)(struct ieee80211_hw *hw, struct sk_buff *skb);
@@ -1601,6 +1605,7 @@ struct ieee80211_ops {
1601#ifdef CONFIG_NL80211_TESTMODE 1605#ifdef CONFIG_NL80211_TESTMODE
1602 int (*testmode_cmd)(struct ieee80211_hw *hw, void *data, int len); 1606 int (*testmode_cmd)(struct ieee80211_hw *hw, void *data, int len);
1603#endif 1607#endif
1608 void (*flush)(struct ieee80211_hw *hw, bool drop);
1604}; 1609};
1605 1610
1606/** 1611/**