wifi: iwlwifi: mvm: check own capabilities for EMLSR
There may be different hardware or configurations supported, so check for our own EMLSR capability before allowing it to be used, in addition to checking the AP's. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://msgid.link/20240208185302.036443611696.If33caabd7cf372834287863b40b2d6d1ef1ca3f7@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
@@ -1275,6 +1275,7 @@ static bool iwl_mvm_can_enter_esr(struct iwl_mvm *mvm,
|
||||
struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif);
|
||||
int primary_link = iwl_mvm_mld_get_primary_link(mvm, vif,
|
||||
desired_links);
|
||||
const struct wiphy_iftype_ext_capab *ext_capa;
|
||||
bool ret = true;
|
||||
int link_id;
|
||||
|
||||
@@ -1284,6 +1285,12 @@ static bool iwl_mvm_can_enter_esr(struct iwl_mvm *mvm,
|
||||
if (!(vif->cfg.eml_cap & IEEE80211_EML_CAP_EMLSR_SUPP))
|
||||
return false;
|
||||
|
||||
ext_capa = cfg80211_get_iftype_ext_capa(mvm->hw->wiphy,
|
||||
ieee80211_vif_type_p2p(vif));
|
||||
if (!ext_capa ||
|
||||
!(ext_capa->eml_capabilities & IEEE80211_EML_CAP_EMLSR_SUPP))
|
||||
return false;
|
||||
|
||||
for_each_set_bit(link_id, &desired_links, IEEE80211_MLD_MAX_NUM_LINKS) {
|
||||
struct ieee80211_bss_conf *link_conf =
|
||||
link_conf_dereference_protected(vif, link_id);
|
||||
|
||||
Reference in New Issue
Block a user