diff options
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c index 5f0701c992a4..ec91dd90acfd 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | |||
@@ -2844,7 +2844,8 @@ static int iwl_mvm_mac_conf_tx(struct ieee80211_hw *hw, | |||
2844 | } | 2844 | } |
2845 | 2845 | ||
2846 | static void iwl_mvm_mac_mgd_prepare_tx(struct ieee80211_hw *hw, | 2846 | static void iwl_mvm_mac_mgd_prepare_tx(struct ieee80211_hw *hw, |
2847 | struct ieee80211_vif *vif) | 2847 | struct ieee80211_vif *vif, |
2848 | u16 req_duration) | ||
2848 | { | 2849 | { |
2849 | struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); | 2850 | struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); |
2850 | u32 duration = IWL_MVM_TE_SESSION_PROTECTION_MAX_TIME_MS; | 2851 | u32 duration = IWL_MVM_TE_SESSION_PROTECTION_MAX_TIME_MS; |
@@ -2857,6 +2858,9 @@ static void iwl_mvm_mac_mgd_prepare_tx(struct ieee80211_hw *hw, | |||
2857 | if (iwl_mvm_ref_sync(mvm, IWL_MVM_REF_PREPARE_TX)) | 2858 | if (iwl_mvm_ref_sync(mvm, IWL_MVM_REF_PREPARE_TX)) |
2858 | return; | 2859 | return; |
2859 | 2860 | ||
2861 | if (req_duration > duration) | ||
2862 | duration = req_duration; | ||
2863 | |||
2860 | mutex_lock(&mvm->mutex); | 2864 | mutex_lock(&mvm->mutex); |
2861 | /* Try really hard to protect the session and hear a beacon */ | 2865 | /* Try really hard to protect the session and hear a beacon */ |
2862 | iwl_mvm_protect_session(mvm, vif, duration, min_duration, 500, false); | 2866 | iwl_mvm_protect_session(mvm, vif, duration, min_duration, 500, false); |