summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/iwlwifi/mvm/time-event.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-05-03 11:16:15 +0200
committerJohannes Berg <johannes.berg@intel.com>2013-10-02 18:00:34 +0200
commit016d27e13b08416988fa06013f66e94fa195244a (patch)
tree3b7c7590c731212641665b9567ffec5b21fbd5c2 /drivers/net/wireless/iwlwifi/mvm/time-event.h
parent4837b448dfa90d76bc3a73e12425ce85f0186865 (diff)
downloadlwn-016d27e13b08416988fa06013f66e94fa195244a.tar.gz
lwn-016d27e13b08416988fa06013f66e94fa195244a.zip
iwlwifi: mvm: give client MACs time to synchronise during restart
When firmware restart happens, the timers are obviously reset and the new firmware has no synchronisation with the AP as we program timings to the pre-restart values. The firmware should attempt to synchronise by itself, but in multi-channel scenarios this isn't easy, particularly since it has to try to keep service quality up for other MACs. To make it more reliable, give each client MAC some time to catch beacons when restarting or resuming. Service quality was impacted anyway (or in resume doesn't really matter much.) Reviewed-by: Moshe Island <moshe.island@intel.com> Reviewed-by: Ilan Peer <ilan.peer@intel.com> Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/time-event.h')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/time-event.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/time-event.h b/drivers/net/wireless/iwlwifi/mvm/time-event.h
index f86c51065ed3..d9c8d6cfa2db 100644
--- a/drivers/net/wireless/iwlwifi/mvm/time-event.h
+++ b/drivers/net/wireless/iwlwifi/mvm/time-event.h
@@ -123,6 +123,7 @@
* @duration: the duration of the session in TU.
* @min_duration: will start a new session if the current session will end
* in less than min_duration.
+ * @max_delay: maximum delay before starting the time event (in TU)
*
* This function can be used to start a session protection which means that the
* fw will stay on the channel for %duration_ms milliseconds. This function
@@ -133,7 +134,8 @@
*/
void iwl_mvm_protect_session(struct iwl_mvm *mvm,
struct ieee80211_vif *vif,
- u32 duration, u32 min_duration);
+ u32 duration, u32 min_duration,
+ u32 max_delay);
/**
* iwl_mvm_stop_session_protection - cancel the session protection.