mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-21 06:50:25 +00:00
wifi: iwlwifi: add support for BE213
Add the BE213 device. This is just like BE211 but with a limitation on the bandwidth. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20250308231426.f02f4d7fc73b.Idaf000dd311358e3b50a511f4efc1cc720abd58b@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
ff4d8998e8
commit
16a8d9a739
4 changed files with 29 additions and 7 deletions
|
@ -142,6 +142,8 @@ const struct iwl_cfg_trans_params iwl_sc_trans_cfg = {
|
|||
.ltr_delay = IWL_CFG_TRANS_LTR_DELAY_2500US,
|
||||
};
|
||||
|
||||
const char iwl_sp_name[] = "Intel(R) Wi-Fi 7 BE213 160MHz";
|
||||
|
||||
const struct iwl_cfg iwl_cfg_sc = {
|
||||
.fw_name_mac = "sc",
|
||||
IWL_DEVICE_SC,
|
||||
|
|
|
@ -550,6 +550,7 @@ extern const char iwl_ax231_name[];
|
|||
extern const char iwl_ax411_name[];
|
||||
extern const char iwl_fm_name[];
|
||||
extern const char iwl_wh_name[];
|
||||
extern const char iwl_sp_name[];
|
||||
extern const char iwl_gl_name[];
|
||||
extern const char iwl_mtp_name[];
|
||||
extern const char iwl_dr_name[];
|
||||
|
|
|
@ -944,7 +944,8 @@ iwl_nvm_fixup_sband_iftd(struct iwl_trans *trans,
|
|||
IEEE80211_EHT_MAC_CAP0_MAX_MPDU_LEN_MASK);
|
||||
break;
|
||||
case NL80211_BAND_6GHZ:
|
||||
if (!trans->reduced_cap_sku) {
|
||||
if (!trans->reduced_cap_sku &&
|
||||
trans->bw_limit >= 320) {
|
||||
iftype_data->eht_cap.eht_cap_elem.phy_cap_info[0] |=
|
||||
IEEE80211_EHT_PHY_CAP0_320MHZ_IN_6GHZ;
|
||||
iftype_data->eht_cap.eht_cap_elem.phy_cap_info[1] |=
|
||||
|
@ -1098,15 +1099,18 @@ iwl_nvm_fixup_sband_iftd(struct iwl_trans *trans,
|
|||
iftype_data->he_cap.he_cap_elem.phy_cap_info[0] &=
|
||||
~IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_160MHZ_IN_5G;
|
||||
|
||||
if (trans->reduced_cap_sku) {
|
||||
if (trans->bw_limit < 320 || trans->reduced_cap_sku) {
|
||||
memset(&iftype_data->eht_cap.eht_mcs_nss_supp.bw._320, 0,
|
||||
sizeof(iftype_data->eht_cap.eht_mcs_nss_supp.bw._320));
|
||||
iftype_data->eht_cap.eht_cap_elem.phy_cap_info[2] &=
|
||||
~IEEE80211_EHT_PHY_CAP2_SOUNDING_DIM_320MHZ_MASK;
|
||||
}
|
||||
|
||||
if (trans->reduced_cap_sku) {
|
||||
iftype_data->eht_cap.eht_mcs_nss_supp.bw._80.rx_tx_mcs13_max_nss = 0;
|
||||
iftype_data->eht_cap.eht_mcs_nss_supp.bw._160.rx_tx_mcs13_max_nss = 0;
|
||||
iftype_data->eht_cap.eht_cap_elem.phy_cap_info[8] &=
|
||||
~IEEE80211_EHT_PHY_CAP8_RX_4096QAM_WIDER_BW_DL_OFDMA;
|
||||
iftype_data->eht_cap.eht_cap_elem.phy_cap_info[2] &=
|
||||
~IEEE80211_EHT_PHY_CAP2_SOUNDING_DIM_320MHZ_MASK;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1187,8 +1187,13 @@ VISIBLE_IF_IWLWIFI_KUNIT const struct iwl_dev_info iwl_dev_info_table[] = {
|
|||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_BW_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_BW_NO_LIM, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
iwl_cfg_sc, iwl_wh_name),
|
||||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
160, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
iwl_cfg_sc, iwl_sp_name),
|
||||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC2, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_GF, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
|
@ -1202,8 +1207,13 @@ VISIBLE_IF_IWLWIFI_KUNIT const struct iwl_dev_info iwl_dev_info_table[] = {
|
|||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC2, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_BW_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_BW_NO_LIM, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
iwl_cfg_sc2, iwl_wh_name),
|
||||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC2, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
160, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
iwl_cfg_sc2, iwl_sp_name),
|
||||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC2F, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_GF, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
|
@ -1217,8 +1227,13 @@ VISIBLE_IF_IWLWIFI_KUNIT const struct iwl_dev_info iwl_dev_info_table[] = {
|
|||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC2F, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_BW_ANY, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_BW_NO_LIM, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
iwl_cfg_sc2f, iwl_wh_name),
|
||||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
IWL_CFG_MAC_TYPE_SC2F, IWL_CFG_ANY,
|
||||
IWL_CFG_RF_TYPE_WH, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
160, IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
iwl_cfg_sc2f, iwl_sp_name),
|
||||
|
||||
/* Dr */
|
||||
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
|
||||
|
|
Loading…
Add table
Reference in a new issue