mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-22 00:14:52 -04:00
wifi: iwlwifi: handle non-overlapping API ranges
The option to set an api_version_min/max also to the RF was added. In the case that both the MAC and the RF has a range defined, we take the narrower range of both. This doesn't work for non-overlapping ranges. In this case, we should just take the lower range of both. Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20250709200543.1628666-2-miriam.rachel.korenblit@intel.com
This commit is contained in:
@@ -301,13 +301,17 @@ static void iwl_get_ucode_api_versions(struct iwl_trans *trans,
|
||||
const struct iwl_family_base_params *base = trans->mac_cfg->base;
|
||||
const struct iwl_rf_cfg *cfg = trans->cfg;
|
||||
|
||||
if (!base->ucode_api_max) {
|
||||
/* if the MAC doesn't have range or if its range it higher than the RF's */
|
||||
if (!base->ucode_api_max ||
|
||||
(cfg->ucode_api_max && base->ucode_api_min > cfg->ucode_api_max)) {
|
||||
*api_min = cfg->ucode_api_min;
|
||||
*api_max = cfg->ucode_api_max;
|
||||
return;
|
||||
}
|
||||
|
||||
if (!cfg->ucode_api_max) {
|
||||
/* if the RF doesn't have range or if its range it higher than the MAC's */
|
||||
if (!cfg->ucode_api_max ||
|
||||
(base->ucode_api_max && cfg->ucode_api_min > base->ucode_api_max)) {
|
||||
*api_min = base->ucode_api_min;
|
||||
*api_max = base->ucode_api_max;
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user