diff options
author | Johannes Berg <johannes.berg@intel.com> | 2024-01-23 20:08:14 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2024-01-26 09:48:53 +0100 |
commit | de0c2cdcb7eb8e08f3886b433277472d97af0f6e (patch) | |
tree | 8ae0e2b71d221910870037f4aa22c14b003277b3 /drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c | |
parent | 84ec2d2e960f33edcee7c47118e59dde72826843 (diff) | |
download | linux-de0c2cdcb7eb8e08f3886b433277472d97af0f6e.tar.gz linux-de0c2cdcb7eb8e08f3886b433277472d97af0f6e.tar.bz2 linux-de0c2cdcb7eb8e08f3886b433277472d97af0f6e.zip |
wifi: iwlwifi: mvm: limit EHT 320 MHz MCS for STEP URM
If the STEP (the interface between MAC and PHY) is in URM
(a lower speed mode) then we cannot use 320 MHz MCS > 9.
Therefore, limit the MCS in our capabilities in this case.
Note that this also limits the TX/rate scaling since that
takes both TX and RX capabilities into account.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Reviewed-by: Gregory Greenman <gregory.greenman@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20240123200528.02bae683b7fc.Id5efbb71d45da02c8c4e211d20396637ddd44da8@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c')
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c b/drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c index 67c7cda073e8..8e6ce484db87 100644 --- a/drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c +++ b/drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c @@ -1061,6 +1061,11 @@ iwl_nvm_fixup_sband_iftd(struct iwl_trans *trans, ~IEEE80211_HE_PHY_CAP7_STBC_RX_ABOVE_80MHZ; } + if (trans->step_urm) { + iftype_data->eht_cap.eht_mcs_nss_supp.bw._320.rx_tx_mcs11_max_nss = 0; + iftype_data->eht_cap.eht_mcs_nss_supp.bw._320.rx_tx_mcs13_max_nss = 0; + } + if (trans->no_160) iftype_data->he_cap.he_cap_elem.phy_cap_info[0] &= ~IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_160MHZ_IN_5G; |