diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-12-23 07:15:32 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-12-28 16:54:51 -0500 |
commit | a80f7c0b088187c8471b441d461e937991870661 (patch) | |
tree | f673c08009a03f2e988a638510b112a5584bea11 /drivers/net/wireless/mac80211_hwsim.c | |
parent | 9607e6b66a0d25ca63b70d54a4283fa13d8f7c9d (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 'drivers/net/wireless/mac80211_hwsim.c')
-rw-r--r-- | drivers/net/wireless/mac80211_hwsim.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c index 718a5f198c30..4dee69a38c1d 100644 --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c | |||
@@ -896,6 +896,16 @@ static int mac80211_hwsim_ampdu_action(struct ieee80211_hw *hw, | |||
896 | return 0; | 896 | return 0; |
897 | } | 897 | } |
898 | 898 | ||
899 | static void mac80211_hwsim_flush(struct ieee80211_hw *hw, bool drop) | ||
900 | { | ||
901 | /* | ||
902 | * In this special case, there's nothing we need to | ||
903 | * do because hwsim does transmission synchronously. | ||
904 | * In the future, when it does transmissions via | ||
905 | * userspace, we may need to do something. | ||
906 | */ | ||
907 | } | ||
908 | |||
899 | 909 | ||
900 | static const struct ieee80211_ops mac80211_hwsim_ops = | 910 | static const struct ieee80211_ops mac80211_hwsim_ops = |
901 | { | 911 | { |
@@ -912,6 +922,7 @@ static const struct ieee80211_ops mac80211_hwsim_ops = | |||
912 | .conf_tx = mac80211_hwsim_conf_tx, | 922 | .conf_tx = mac80211_hwsim_conf_tx, |
913 | CFG80211_TESTMODE_CMD(mac80211_hwsim_testmode_cmd) | 923 | CFG80211_TESTMODE_CMD(mac80211_hwsim_testmode_cmd) |
914 | .ampdu_action = mac80211_hwsim_ampdu_action, | 924 | .ampdu_action = mac80211_hwsim_ampdu_action, |
925 | .flush = mac80211_hwsim_flush, | ||
915 | }; | 926 | }; |
916 | 927 | ||
917 | 928 | ||