]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: iwlwifi: cfg: handle cc firmware dynamically
authorJohannes Berg <johannes.berg@intel.com>
Thu, 8 May 2025 12:12:56 +0000 (15:12 +0300)
committerMiri Korenblit <miriam.rachel.korenblit@intel.com>
Fri, 9 May 2025 12:37:40 +0000 (15:37 +0300)
Instead of using fw_name_pre, handle the cc firmware file
name specially in iwl_drv_get_fwname_pre() for the cc MAC
type.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Link: https://patch.msgid.link/20250508121306.1277801-6-miriam.rachel.korenblit@intel.com
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
drivers/net/wireless/intel/iwlwifi/cfg/22000.c
drivers/net/wireless/intel/iwlwifi/iwl-config.h
drivers/net/wireless/intel/iwlwifi/iwl-drv.c
drivers/net/wireless/intel/iwlwifi/pcie/drv.c

index 5b0704241b15b60f84b49af7733201b88d07fd3c..073e95a61c0df060405661462a0946799edb3a71 100644 (file)
@@ -214,12 +214,6 @@ const struct iwl_cfg iwl_qu_hr_80mhz = {
        .bw_limit = 80,
 };
 
-const struct iwl_cfg iwl_ax200_cfg_cc = {
-       .fw_name_pre = IWL_CC_A_FW_PRE,
-       IWL_DEVICE_22500,
-       .num_rbds = IWL_NUM_RBDS_22000_HE,
-};
-
 MODULE_FIRMWARE(IWL_QU_B_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX));
 MODULE_FIRMWARE(IWL_QU_C_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX));
 MODULE_FIRMWARE(IWL_QU_B_JF_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX));
index 0977a683459abceb5c81014b847f8064e55f3ae9..320b14303a66af51c65a4ee41ce28f8570ee7caa 100644 (file)
@@ -410,6 +410,7 @@ struct iwl_cfg {
 #define IWL_CFG_MAC_TYPE_PU            0x31
 #define IWL_CFG_MAC_TYPE_TH            0x32
 #define IWL_CFG_MAC_TYPE_QU            0x33
+#define IWL_CFG_MAC_TYPE_CC            0x34
 #define IWL_CFG_MAC_TYPE_QUZ           0x35
 #define IWL_CFG_MAC_TYPE_SO            0x37
 #define IWL_CFG_MAC_TYPE_TY            0x42
@@ -671,7 +672,6 @@ extern const struct iwl_cfg iwl9560_qu_jf_cfg_80mhz;
 extern const struct iwl_cfg iwl_qu_hr1;
 extern const struct iwl_cfg iwl_qu_hr;
 extern const struct iwl_cfg iwl_qu_hr_80mhz;
-extern const struct iwl_cfg iwl_ax200_cfg_cc;
 extern const struct iwl_cfg iwlax210_2ax_cfg_so_jf_b0;
 extern const struct iwl_cfg iwlax210_2ax_cfg_so_jf_b0_80mhz;
 
index eb57981e4c8cf0a1ed53254bcd12cb559f199e93..2fade565a810f67775b06851fe41a05054eeec84 100644 (file)
@@ -201,6 +201,10 @@ const char *iwl_drv_get_fwname_pre(struct iwl_trans *trans, char *buf)
        case IWL_CFG_MAC_TYPE_QU:
                mac = "Qu";
                break;
+       case IWL_CFG_MAC_TYPE_CC:
+               /* special case - no RF since it's fixed (discrete) */
+               scnprintf(buf, FW_NAME_PRE_BUFSIZE, "iwlwifi-cc-a0");
+               return buf;
        case IWL_CFG_MAC_TYPE_QUZ:
                mac = "QuZ";
                /* all QuZ use A0 firmware */
index bffe3bb3e3f0638b814f984da6858d93410b8181..94c1b844a6b1090cdfb916fbc410728d5f6ed05c 100644 (file)
@@ -997,11 +997,11 @@ VISIBLE_IF_IWLWIFI_KUNIT const struct iwl_dev_info iwl_dev_info_table[] = {
                     DEVICE(0x7E40), SUBDEV(0x1692)),
 
 /* AX200 */
-       IWL_DEV_INFO(iwl_ax200_cfg_cc, iwl_ax200_name,
+       IWL_DEV_INFO(iwl_qu_hr, iwl_ax200_name,
                     DEVICE(0x2723)),
-       IWL_DEV_INFO(iwl_ax200_cfg_cc, iwl_ax200_killer_1650w_name,
+       IWL_DEV_INFO(iwl_qu_hr, iwl_ax200_killer_1650w_name,
                     DEVICE(0x2723), SUBDEV(0x1653)),
-       IWL_DEV_INFO(iwl_ax200_cfg_cc, iwl_ax200_killer_1650x_name,
+       IWL_DEV_INFO(iwl_qu_hr, iwl_ax200_killer_1650x_name,
                     DEVICE(0x2723), SUBDEV(0x1654)),
 
        /* Qu with Hr */