From: Gregory Greenman Date: Wed, 29 Mar 2023 07:05:33 +0000 (+0300) Subject: wifi: iwlwifi: mvm: update mac config when assigning chanctx X-Git-Tag: v6.6.17~4755^2~193^2~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ef36f1df198b57e2c9c1fe249f537cd64a762f9f;p=platform%2Fkernel%2Flinux-rpi.git wifi: iwlwifi: mvm: update mac config when assigning chanctx Some mac parameters, such as HE support, can change at this stage. Update mac config before updating links. Signed-off-by: Gregory Greenman Link: https://lore.kernel.org/r/20230329100040.d7882a0d6e04.Ie38cd854a237c46cf85fd7143dc757326f30da6e@changeid Signed-off-by: Johannes Berg --- diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mld-mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mld-mac80211.c index beef706..4d56b2f 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/mld-mac80211.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/mld-mac80211.c @@ -231,6 +231,18 @@ __iwl_mvm_mld_assign_vif_chanctx(struct iwl_mvm *mvm, if (WARN_ON_ONCE(!mvmvif->link[link_id])) return -EINVAL; + /* mac parameters such as HE support can change at this stage + * For sta, need first to configure correct state from drv_sta_state + * and only after that update mac config. + */ + if (vif->type == NL80211_IFTYPE_AP) { + ret = iwl_mvm_mld_mac_ctxt_changed(mvm, vif, false); + if (ret) { + IWL_ERR(mvm, "failed to update MAC %pM\n", vif->addr); + return -EINVAL; + } + } + mvmvif->link[link_id]->phy_ctxt = phy_ctxt; if (switching_chanctx) {