diff options
author | Yedidya Benshimol <yedidya.ben.shimol@intel.com> | 2024-03-19 12:24:26 +0200 |
---|---|---|
committer | iwlwifi publisher <> | 2024-04-17 13:42:25 +0000 |
commit | 41af0048aa05bdcede4e11dc67b324ac3f7cd3d0 (patch) | |
tree | fe6049aa84fc6c3fb1f75c2d2dbb3ba3c6037b07 | |
parent | 23ac31df39d2c9dbd5814eed7bf332d23ede2cf4 (diff) | |
download | backport-iwlwifi-41af0048aa05bdcede4e11dc67b324ac3f7cd3d0.tar.gz |
wifi: iwlwifi: mvm: Add a print for invalid link pair due to bandwidth
When validating a link pair for EMLSR, add a print for invalid link
pair due to bandwidth
type=cleanup
ticket=none
Signed-off-by: Yedidya Benshimol <yedidya.ben.shimol@intel.com>
Change-Id: Id8edfd5e3774ea6475d5f4178ab7ea75a870ef95
Reviewed-on: https://gerritwcs.ir.intel.com/c/iwlwifi-stack-dev/+/99999
automatic-review: iil_jenkins iil_jenkins <EC.GER.UNIX.IIL.JENKINS@INTEL.COM>
Tested-by: iil_jenkins iil_jenkins <EC.GER.UNIX.IIL.JENKINS@INTEL.COM>
tested: iil_jenkins iil_jenkins <EC.GER.UNIX.IIL.JENKINS@INTEL.COM>
Reviewed-by: Miriam Rachel Korenblit <miriam.rachel.korenblit@intel.com>
(cherry picked from commit 2054e4a3c55e365973a7715f1009ac09ff306793)
Reviewed-on: https://gerritwcs.ir.intel.com/c/iwlwifi-stack-dev/+/100593
tested: Miriam Rachel Korenblit <miriam.rachel.korenblit@intel.com>
PerCI-Ready: Miriam Rachel Korenblit <miriam.rachel.korenblit@intel.com>
x-iwlwifi-stack-dev: e1737ad9efc4b552113dd8d6dc7153c9da0bae42
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/link.c | 31 | ||||
-rw-r--r-- | versions | 2 |
2 files changed, 21 insertions, 12 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/link.c b/drivers/net/wireless/intel/iwlwifi/mvm/link.c index 5e89521827..99305d9919 100644 --- a/drivers/net/wireless/intel/iwlwifi/mvm/link.c +++ b/drivers/net/wireless/intel/iwlwifi/mvm/link.c @@ -690,12 +690,11 @@ s8 iwl_mvm_get_esr_rssi_thresh(struct iwl_mvm *mvm, } static u32 -iwl_mvm_esr_disallowed_with_link(struct ieee80211_vif *vif, +iwl_mvm_esr_disallowed_with_link(struct iwl_mvm *mvm, + struct ieee80211_vif *vif, const struct iwl_mvm_link_sel_data *link, bool primary) { - struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); - struct iwl_mvm *mvm = mvmvif->mvm; struct wiphy *wiphy = mvm->hw->wiphy; struct ieee80211_bss_conf *conf; enum iwl_mvm_esr_state ret = 0; @@ -734,20 +733,30 @@ bool iwl_mvm_mld_valid_link_pair(struct ieee80211_vif *vif, const struct iwl_mvm_link_sel_data *a, const struct iwl_mvm_link_sel_data *b) { - /* Per-link considerations */ - if (iwl_mvm_esr_disallowed_with_link(vif, a, true) || - iwl_mvm_esr_disallowed_with_link(vif, b, false)) - return false; + struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); + struct iwl_mvm *mvm = mvmvif->mvm; + enum iwl_mvm_esr_state ret = 0; - if (a->chandef->width != b->chandef->width) + /* Per-link considerations */ + if (iwl_mvm_esr_disallowed_with_link(mvm, vif, a, true) || + iwl_mvm_esr_disallowed_with_link(mvm, vif, b, false)) return false; - if (!(a->chandef->chan->band == NL80211_BAND_6GHZ && + if (a->chandef->width != b->chandef->width || + !(a->chandef->chan->band == NL80211_BAND_6GHZ && b->chandef->chan->band == NL80211_BAND_5GHZ)) + ret |= IWL_MVM_ESR_EXIT_BANDWIDTH; + + if (ret) { + IWL_DEBUG_INFO(mvm, + "Links %d and %d are not a valid pair for EMLSR\n", + a->link_id, b->link_id); + iwl_mvm_print_esr_state(mvm, ret); return false; + } + + return true; - /* Per-combination considerations */ - return a->chandef->chan->band != b->chandef->chan->band; } EXPORT_SYMBOL_IF_IWLWIFI_KUNIT(iwl_mvm_mld_valid_link_pair); @@ -2,5 +2,5 @@ BACKPORTS_VERSION="(see git)" BACKPORTED_KERNEL_VERSION="(see git)" BACKPORTED_KERNEL_NAME="iwlwifi" BACKPORTS_BUILD_TSTAMP=__DATE__ \" \" __TIME__ -BACKPORTS_GIT_TRACKED="iwlwifi-stack-public:release/core87:12051:bcd9b42b" +BACKPORTS_GIT_TRACKED="iwlwifi-stack-public:release/core87:12052:e1737ad9" BACKPORTS_BRANCH_TSTAMP="Apr 17 2024 13:11:40" |