mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
wifi: iwlwifi: iwlmld is always used for wifi7 devices
iwlmld is used since API 97 and for wifi7 devices. Since APIs < 97 are no longer supported on such devices, we can remove the API check and always load iwlmld for the wifi7 devices. Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20250915113137.45ab33fcdc00.Ia3a40b687b75c872cf7e7a19331a014bccf5f2d6@changeid
This commit is contained in:
@@ -179,7 +179,8 @@ static inline char iwl_drv_get_step(int step)
|
||||
|
||||
static bool iwl_drv_is_wifi7_supported(struct iwl_trans *trans)
|
||||
{
|
||||
return CSR_HW_RFID_TYPE(trans->info.hw_rf_id) >= IWL_CFG_RF_TYPE_FM;
|
||||
return trans->mac_cfg->device_family >= IWL_DEVICE_FAMILY_BZ &&
|
||||
CSR_HW_RFID_TYPE(trans->info.hw_rf_id) >= IWL_CFG_RF_TYPE_FM;
|
||||
}
|
||||
|
||||
const char *iwl_drv_get_fwname_pre(struct iwl_trans *trans, char *buf)
|
||||
@@ -427,7 +428,6 @@ struct iwl_firmware_pieces {
|
||||
size_t dbg_trigger_tlv_len[FW_DBG_TRIGGER_MAX];
|
||||
struct iwl_fw_dbg_mem_seg_tlv *dbg_mem_tlv;
|
||||
size_t n_mem_tlv;
|
||||
u32 major;
|
||||
};
|
||||
|
||||
static void alloc_sec_data(struct iwl_firmware_pieces *pieces,
|
||||
@@ -1069,19 +1069,19 @@ static int iwl_parse_tlv_firmware(struct iwl_drv *drv,
|
||||
break;
|
||||
case IWL_UCODE_TLV_FW_VERSION: {
|
||||
const __le32 *ptr = (const void *)tlv_data;
|
||||
u32 minor;
|
||||
u32 major, minor;
|
||||
u8 local_comp;
|
||||
|
||||
if (tlv_len != sizeof(u32) * 3)
|
||||
goto invalid_tlv_len;
|
||||
|
||||
pieces->major = le32_to_cpup(ptr++);
|
||||
major = le32_to_cpup(ptr++);
|
||||
minor = le32_to_cpup(ptr++);
|
||||
local_comp = le32_to_cpup(ptr);
|
||||
|
||||
snprintf(drv->fw.fw_version,
|
||||
sizeof(drv->fw.fw_version),
|
||||
"%u.%08x.%u %s", pieces->major, minor,
|
||||
"%u.%08x.%u %s", major, minor,
|
||||
local_comp, iwl_reduced_fw_name(drv));
|
||||
break;
|
||||
}
|
||||
@@ -1589,8 +1589,6 @@ static void _iwl_op_mode_stop(struct iwl_drv *drv)
|
||||
}
|
||||
}
|
||||
|
||||
#define IWL_MLD_SUPPORTED_FW_VERSION 97
|
||||
|
||||
/*
|
||||
* iwl_req_fw_callback - callback when firmware was loaded
|
||||
*
|
||||
@@ -1859,12 +1857,10 @@ static void iwl_req_fw_callback(const struct firmware *ucode_raw, void *context)
|
||||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_IWLMLD)
|
||||
if (pieces->major >= IWL_MLD_SUPPORTED_FW_VERSION &&
|
||||
iwl_drv_is_wifi7_supported(drv->trans))
|
||||
if (iwl_drv_is_wifi7_supported(drv->trans))
|
||||
op = &iwlwifi_opmode_table[MLD_OP_MODE];
|
||||
#else
|
||||
if (pieces->major >= IWL_MLD_SUPPORTED_FW_VERSION &&
|
||||
iwl_drv_is_wifi7_supported(drv->trans)) {
|
||||
if (iwl_drv_is_wifi7_supported(drv->trans)) {
|
||||
IWL_ERR(drv,
|
||||
"IWLMLD needs to be compiled to support this firmware\n");
|
||||
mutex_unlock(&iwlwifi_opmode_table_mtx);
|
||||
|
||||
Reference in New Issue
Block a user