wifi: iwlwifi: mvm: Correctly set link configuration
In case the link puncturing is changed such that the channel
is no longer punctured, configure the FW correctly indicating
the EHT parameters changed (with a 0 punctured map).
Allow EHT parameters configuration only when the link really
supports EHT.
Fixes: 55eb1c5fa4
("wifi: iwlwifi: mvm: add support for the new LINK command")
Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20231004123422.2666ef86e032.I4b0e95722660acc5345ceefba7e8866a69572e8e@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
7dd7f99b17
commit
35b9281fb7
@ -189,11 +189,14 @@ int iwl_mvm_link_changed(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
|
||||
flags_mask |= LINK_FLG_MU_EDCA_CW;
|
||||
}
|
||||
|
||||
if (link_conf->eht_puncturing && !iwlwifi_mod_params.disable_11be)
|
||||
cmd.puncture_mask = cpu_to_le16(link_conf->eht_puncturing);
|
||||
else
|
||||
/* This flag can be set only if the MAC has eht support */
|
||||
changes &= ~LINK_CONTEXT_MODIFY_EHT_PARAMS;
|
||||
if (changes & LINK_CONTEXT_MODIFY_EHT_PARAMS) {
|
||||
if (iwlwifi_mod_params.disable_11be ||
|
||||
!link_conf->eht_support)
|
||||
changes &= ~LINK_CONTEXT_MODIFY_EHT_PARAMS;
|
||||
else
|
||||
cmd.puncture_mask =
|
||||
cpu_to_le16(link_conf->eht_puncturing);
|
||||
}
|
||||
|
||||
cmd.bss_color = link_conf->he_bss_color.color;
|
||||
|
||||
|
@ -744,7 +744,7 @@ iwl_mvm_mld_link_info_changed_station(struct iwl_mvm *mvm,
|
||||
}
|
||||
|
||||
/* Update EHT Puncturing info */
|
||||
if (changes & BSS_CHANGED_EHT_PUNCTURING && vif->cfg.assoc && has_eht)
|
||||
if (changes & BSS_CHANGED_EHT_PUNCTURING && vif->cfg.assoc)
|
||||
link_changes |= LINK_CONTEXT_MODIFY_EHT_PARAMS;
|
||||
|
||||
if (link_changes) {
|
||||
|
Loading…
Reference in New Issue
Block a user