summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/intel/iwlwifi
diff options
context:
space:
mode:
authorMiri Korenblit <miriam.rachel.korenblit@intel.com>2024-05-05 09:19:53 +0300
committerJohannes Berg <johannes.berg@intel.com>2024-05-06 17:33:24 +0300
commit8ecdc570781d1664516323a52152493c856df215 (patch)
tree5c6f9d15e2cb3c0a02b106fbc68231e808aa30d9 /drivers/net/wireless/intel/iwlwifi
parentbc6a7fae761cc1a2c0c3699cfcabcfebca021481 (diff)
downloadlinux-8ecdc570781d1664516323a52152493c856df215.tar.xz
wifi: iwlwifi: mvm: avoid always prefering single-link
The new link selection algorithm uses defaults values for BSS load if the BSS Load element was not published by the AP. For 6 GHz, that value is 0. So if the best link is 6 GHz, the EMLSR grade to always be equal to the grade of the best link, and then the best link grade is getting a bonus of 10 percent, meaning that we will never activate EMLSR. Change the logic to not give a bonus for the best link. Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://msgid.link/20240505091420.4614e6891dbd.Ie40eae0dd99d82ba60dea5b6dbcd42dcdf16b90d@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/link.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/link.c b/drivers/net/wireless/intel/iwlwifi/mvm/link.c
index 79f048f54a21..9d7f9e5be253 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/link.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/link.c
@@ -727,8 +727,8 @@ void iwl_mvm_select_links(struct iwl_mvm *mvm, struct ieee80211_vif *vif)
if (hweight16(new_active_links) <= 1)
goto set_active;
- /* prefer single link over marginal eSR improvement */
- if (best_link->grade * 110 / 100 >= max_esr_grade) {
+ /* For equal grade - prefer EMLSR */
+ if (best_link->grade > max_esr_grade) {
primary_link = best_link->link_id;
new_active_links = BIT(best_link->link_id);
}