Skip to content

Commit d270e7b

Browse files
ilanpeer2lucacoelho
authored andcommitted
iwlwifi: mvm: Allow iwl_mvm_mac_mgd_prepare_tx() when associated
The FW does not allocate quota air time for the binding of a station MAC before iwlmvm indicates that it is associated. Currently iwlmvm indicates that the MAC is associated only after hearing a beacon from the AP. In case a deauthentication frame is sent before the MAC is associated, the frame might not be sent as the corresponding binding is not scheduled. To handle such cases, set IEEE80211_HW_DEAUTH_NEED_MGD_TX_PREP in the HW flags, requesting mac80211 to call the mgd_prepare_tx() callback before transmitting a deauthentication frame if associated but no beacon was heard from the AP. In addition, do not warn in iwl_mvm_mac_mgd_prepare_tx() when already associated as now the callback can be called also when associated. Signed-off-by: Ilan Peer <[email protected]> Signed-off-by: Luca Coelho <[email protected]>
1 parent 8f691af commit d270e7b

File tree

1 file changed

+1
-3
lines changed

1 file changed

+1
-3
lines changed

drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -421,6 +421,7 @@ int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
421421
ieee80211_hw_set(hw, SUPPORTS_CLONED_SKBS);
422422
ieee80211_hw_set(hw, SUPPORTS_AMSDU_IN_AMPDU);
423423
ieee80211_hw_set(hw, NEEDS_UNIQUE_STA_ADDR);
424+
ieee80211_hw_set(hw, DEAUTH_NEED_MGD_TX_PREP);
424425

425426
if (iwl_mvm_has_tlc_offload(mvm)) {
426427
ieee80211_hw_set(hw, TX_AMPDU_SETUP_IN_HW);
@@ -2815,9 +2816,6 @@ static void iwl_mvm_mac_mgd_prepare_tx(struct ieee80211_hw *hw,
28152816
u32 duration = IWL_MVM_TE_SESSION_PROTECTION_MAX_TIME_MS;
28162817
u32 min_duration = IWL_MVM_TE_SESSION_PROTECTION_MIN_TIME_MS;
28172818

2818-
if (WARN_ON_ONCE(vif->bss_conf.assoc))
2819-
return;
2820-
28212819
/*
28222820
* iwl_mvm_protect_session() reads directly from the device
28232821
* (the system time), so make sure it is available.

0 commit comments

Comments
 (0)