linux/drivers/net/wireless/intel/iwlwifi/cfg/22000.c

// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
/*
 * Copyright (C) 2015-2017 Intel Deutschland GmbH
 * Copyright (C) 2018-2024 Intel Corporation
 */
#include <linux/module.h>
#include <linux/stringify.h>
#include "iwl-config.h"
#include "iwl-prph.h"
#include "fw/api/txq.h"

/* Highest firmware API version supported */
#define IWL_22000_UCODE_API_MAX

/* Lowest firmware API version supported */
#define IWL_22000_UCODE_API_MIN

/* NVM versions */
#define IWL_22000_NVM_VERSION

/* Memory offsets and lengths */
#define IWL_22000_DCCM_OFFSET
#define IWL_22000_DCCM_LEN
#define IWL_22000_DCCM2_OFFSET
#define IWL_22000_DCCM2_LEN
#define IWL_22000_SMEM_OFFSET
#define IWL_22000_SMEM_LEN

#define IWL_QU_B_HR_B_FW_PRE
#define IWL_QU_C_HR_B_FW_PRE
#define IWL_QU_B_JF_B_FW_PRE
#define IWL_QU_C_JF_B_FW_PRE
#define IWL_QUZ_A_HR_B_FW_PRE
#define IWL_QUZ_A_JF_B_FW_PRE
#define IWL_CC_A_FW_PRE

#define IWL_QU_B_HR_B_MODULE_FIRMWARE(api)
#define IWL_QUZ_A_HR_B_MODULE_FIRMWARE(api)
#define IWL_QUZ_A_JF_B_MODULE_FIRMWARE(api)
#define IWL_QU_C_HR_B_MODULE_FIRMWARE(api)
#define IWL_QU_B_JF_B_MODULE_FIRMWARE(api)
#define IWL_CC_A_MODULE_FIRMWARE(api)

static const struct iwl_base_params iwl_22000_base_params =;

const struct iwl_ht_params iwl_22000_ht_params =;

#define IWL_DEVICE_22000_COMMON

#define IWL_DEVICE_22500

const struct iwl_cfg_trans_params iwl_qu_trans_cfg =;

const struct iwl_cfg_trans_params iwl_qu_medium_latency_trans_cfg =;

const struct iwl_cfg_trans_params iwl_qu_long_latency_trans_cfg =;

/*
 * If the device doesn't support HE, no need to have that many buffers.
 * 22000 devices can split multiple frames into a single RB, so fewer are
 * needed; AX210 cannot (but use smaller RBs by default) - these sizes
 * were picked according to 8 MSDUs inside 256 A-MSDUs in an A-MPDU, with
 * additional overhead to account for processing time.
 */
#define IWL_NUM_RBDS_NON_HE
#define IWL_NUM_RBDS_22000_HE

/*
 * All JF radio modules are part of the 9000 series, but the MAC part
 * looks more like 22000.  That's why this device is here, but called
 * 9560 nevertheless.
 */
const struct iwl_cfg iwl9560_qu_b0_jf_b0_cfg =;

const struct iwl_cfg iwl9560_qu_c0_jf_b0_cfg =;

const struct iwl_cfg iwl9560_quz_a0_jf_b0_cfg =;

const struct iwl_cfg_trans_params iwl_ax200_trans_cfg =;

const char iwl_ax101_name[] =;
const char iwl_ax200_name[] =;
const char iwl_ax201_name[] =;
const char iwl_ax203_name[] =;
const char iwl_ax204_name[] =;

const char iwl_ax200_killer_1650w_name[] =;
const char iwl_ax200_killer_1650x_name[] =;
const char iwl_ax201_killer_1650s_name[] =;
const char iwl_ax201_killer_1650i_name[] =;

const struct iwl_cfg iwl_qu_b0_hr1_b0 =;

const struct iwl_cfg iwl_qu_b0_hr_b0 =;

const struct iwl_cfg iwl_ax201_cfg_qu_hr =;

const struct iwl_cfg iwl_qu_c0_hr1_b0 =;

const struct iwl_cfg iwl_qu_c0_hr_b0 =;

const struct iwl_cfg iwl_ax201_cfg_qu_c0_hr_b0 =;

const struct iwl_cfg iwl_quz_a0_hr1_b0 =;

const struct iwl_cfg iwl_ax201_cfg_quz_hr =;

const struct iwl_cfg iwl_ax1650s_cfg_quz_hr =;

const struct iwl_cfg iwl_ax1650i_cfg_quz_hr =;

const struct iwl_cfg iwl_ax200_cfg_cc =;

const struct iwl_cfg killer1650s_2ax_cfg_qu_b0_hr_b0 =;

const struct iwl_cfg killer1650i_2ax_cfg_qu_b0_hr_b0 =;

const struct iwl_cfg killer1650s_2ax_cfg_qu_c0_hr_b0 =;

const struct iwl_cfg killer1650i_2ax_cfg_qu_c0_hr_b0 =;

const struct iwl_cfg iwl_cfg_quz_a0_hr_b0 =;

MODULE_FIRMWARE();
MODULE_FIRMWARE();
MODULE_FIRMWARE();
MODULE_FIRMWARE();
MODULE_FIRMWARE();
MODULE_FIRMWARE();