iwlwifi: mvm: use switching_chanctx argument instead of csa_active
Now that all CSA flows are using the switch_vif_chanctx op, we can rely on the switching_chanctx boolean that is passed to the __iwl_mvm_assign_vif_chanctx() and __iwl_mvm_unassign_vif_chanctx() functions to decide whether the context switch flows need to be executed. In this way we make the chanctx switch flow more generic, without having to rely on the csa_active flag being set. Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
This commit is contained in:
parent
f6c34820d3
commit
4741dd049a
|
@ -2796,8 +2796,8 @@ static int __iwl_mvm_assign_vif_chanctx(struct iwl_mvm *mvm,
|
|||
|
||||
switch (vif->type) {
|
||||
case NL80211_IFTYPE_AP:
|
||||
/* Unless it's a CSA flow we have nothing to do here */
|
||||
if (vif->csa_active) {
|
||||
/* only needed if we're switching chanctx (i.e. during CSA) */
|
||||
if (switching_chanctx) {
|
||||
mvmvif->ap_ibss_active = true;
|
||||
break;
|
||||
}
|
||||
|
@ -2847,7 +2847,7 @@ static int __iwl_mvm_assign_vif_chanctx(struct iwl_mvm *mvm,
|
|||
iwl_mvm_mac_ctxt_changed(mvm, vif, false, NULL);
|
||||
}
|
||||
|
||||
if (vif->csa_active && vif->type == NL80211_IFTYPE_STATION) {
|
||||
if (switching_chanctx && vif->type == NL80211_IFTYPE_STATION) {
|
||||
struct iwl_mvm_sta *mvmsta;
|
||||
|
||||
mvmsta = iwl_mvm_sta_from_staid_protected(mvm,
|
||||
|
@ -2906,7 +2906,7 @@ static void __iwl_mvm_unassign_vif_chanctx(struct iwl_mvm *mvm,
|
|||
break;
|
||||
case NL80211_IFTYPE_AP:
|
||||
/* This part is triggered only during CSA */
|
||||
if (!vif->csa_active || !mvmvif->ap_ibss_active)
|
||||
if (!switching_chanctx || !mvmvif->ap_ibss_active)
|
||||
goto out;
|
||||
|
||||
mvmvif->csa_countdown = false;
|
||||
|
|
Loading…
Reference in New Issue