diff mbox series

[for,v5.11] iwlwifi: add new cards for So and Qu family

Message ID iwlwifi.20210206130110.6f0c1849f7dc.I647b4d22f9468c2f34b777a4bfa445912c6f04f0@changeid
State New
Headers show
Series [for,v5.11] iwlwifi: add new cards for So and Qu family | expand

Commit Message

Luca Coelho Feb. 6, 2021, 11:01 a.m. UTC
From: Ihab Zhaika <ihab.zhaika@intel.com>

add few PCI ID'S for So with Hr and Qu with Hr in AX family.

Signed-off-by: Ihab Zhaika <ihab.zhaika@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
---
 .../net/wireless/intel/iwlwifi/cfg/22000.c    | 18 +++++++++++++
 .../net/wireless/intel/iwlwifi/iwl-config.h   |  3 +++
 drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 26 +++++++++++++++++++
 3 files changed, 47 insertions(+)

Comments

Kalle Valo Feb. 8, 2021, 8:30 a.m. UTC | #1
Luca Coelho <luca@coelho.fi> wrote:

> From: Ihab Zhaika <ihab.zhaika@intel.com>

> 

> add few PCI ID'S for So with Hr and Qu with Hr in AX family.

> 

> Signed-off-by: Ihab Zhaika <ihab.zhaika@intel.com>

> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>


Why the urgency? Linus most likely releases v5.11 next Sunday so I would rather
apply this to -next. You could push it to v5.11 via the stable tree.

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/iwlwifi.20210206130110.6f0c1849f7dc.I647b4d22f9468c2f34b777a4bfa445912c6f04f0@changeid/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Luca Coelho Feb. 8, 2021, 8:40 a.m. UTC | #2
On Mon, 2021-02-08 at 08:30 +0000, Kalle Valo wrote:
> Luca Coelho <luca@coelho.fi> wrote:

> 

> > From: Ihab Zhaika <ihab.zhaika@intel.com>

> > 

> > add few PCI ID'S for So with Hr and Qu with Hr in AX family.

> > 

> > Signed-off-by: Ihab Zhaika <ihab.zhaika@intel.com>

> > Signed-off-by: Luca Coelho <luciano.coelho@intel.com>

> 

> Why the urgency? Linus most likely releases v5.11 next Sunday so I would rather

> apply this to -next. You could push it to v5.11 via the stable tree.


The urgency was that there are some OEMs with these devices and they
wanted the patch in v5.11 asap.  But I can certainly push back and we
can send this via -next.  I only promised to *try* to get it in v5.11.
;)

I'll add a Cc: stable and apply to iwlwifi-next.

Thanks, Kalle.

--
Cheers,
Luca.
Kalle Valo Feb. 8, 2021, 9:25 a.m. UTC | #3
Luca Coelho <luca@coelho.fi> writes:

> On Mon, 2021-02-08 at 08:30 +0000, Kalle Valo wrote:

>> Luca Coelho <luca@coelho.fi> wrote:

>> 

>> > From: Ihab Zhaika <ihab.zhaika@intel.com>

>> > 

>> > add few PCI ID'S for So with Hr and Qu with Hr in AX family.

>> > 

>> > Signed-off-by: Ihab Zhaika <ihab.zhaika@intel.com>

>> > Signed-off-by: Luca Coelho <luciano.coelho@intel.com>

>> 

>> Why the urgency? Linus most likely releases v5.11 next Sunday so I would rather

>> apply this to -next. You could push it to v5.11 via the stable tree.

>

> The urgency was that there are some OEMs with these devices and they

> wanted the patch in v5.11 asap.  But I can certainly push back and we

> can send this via -next.  I only promised to *try* to get it in v5.11.

> ;)


If all goes well the merge window will start on Sunday and -next patches
should be in Linus' tree by end of next week. So I would imagine the
patch would be in the first stable release.

> I'll add a Cc: stable and apply to iwlwifi-next.


Thanks! BTW, could you also take this patch to your tree:

https://patchwork.kernel.org/project/linux-wireless/patch/20210112132449.22243-3-tiwai@suse.de/

Less conflicts that way. I assigned it to you on patchwork.

-- 
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Luca Coelho Feb. 10, 2021, 11:32 a.m. UTC | #4
Luca Coelho <luca@coelho.fi> wrote:

> From: Ihab Zhaika <ihab.zhaika@intel.com>

> 

> add few PCI ID'S for So with Hr and Qu with Hr in AX family.

> 

> Signed-off-by: Ihab Zhaika <ihab.zhaika@intel.com>

> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>


Patch applied to iwlwifi-next.git, thanks.

a70fd2c9bbd5 iwlwifi: add new cards for So and Qu family
diff mbox series

Patch

diff --git a/drivers/net/wireless/intel/iwlwifi/cfg/22000.c b/drivers/net/wireless/intel/iwlwifi/cfg/22000.c
index 8280092066e7..503d0feb6bbc 100644
--- a/drivers/net/wireless/intel/iwlwifi/cfg/22000.c
+++ b/drivers/net/wireless/intel/iwlwifi/cfg/22000.c
@@ -635,6 +635,24 @@  const struct iwl_cfg iwl_cfg_snj_a0_mr_a0 = {
 	.num_rbds = IWL_NUM_RBDS_AX210_HE,
 };
 
+const struct iwl_cfg iwl_cfg_so_a0_hr_a0 = {
+	.fw_name_pre = IWL_SO_A_HR_B_FW_PRE,
+	IWL_DEVICE_AX210,
+	.num_rbds = IWL_NUM_RBDS_AX210_HE,
+};
+
+const struct iwl_cfg iwl_cfg_quz_a0_hr_b0 = {
+	.fw_name_pre = IWL_QUZ_A_HR_B_FW_PRE,
+	IWL_DEVICE_22500,
+	/*
+	 * This device doesn't support receiving BlockAck with a large bitmap
+	 * so we need to restrict the size of transmitted aggregation to the
+	 * HT size; mac80211 would otherwise pick the HE max (256) by default.
+	 */
+	.max_tx_agg_size = IEEE80211_MAX_AMPDU_BUF_HT,
+	.num_rbds = IWL_NUM_RBDS_22000_HE,
+};
+
 MODULE_FIRMWARE(IWL_QU_B_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX));
 MODULE_FIRMWARE(IWL_QNJ_B_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX));
 MODULE_FIRMWARE(IWL_QU_C_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX));
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-config.h b/drivers/net/wireless/intel/iwlwifi/iwl-config.h
index 86e1d57df65e..c72d23d54d90 100644
--- a/drivers/net/wireless/intel/iwlwifi/iwl-config.h
+++ b/drivers/net/wireless/intel/iwlwifi/iwl-config.h
@@ -418,6 +418,7 @@  struct iwl_cfg {
 #define IWL_CFG_MAC_TYPE_QU		0x33
 #define IWL_CFG_MAC_TYPE_QUZ		0x35
 #define IWL_CFG_MAC_TYPE_QNJ		0x36
+#define IWL_CFG_MAC_TYPE_SO		0x37
 #define IWL_CFG_MAC_TYPE_SNJ		0x42
 #define IWL_CFG_MAC_TYPE_MA		0x44
 
@@ -604,6 +605,8 @@  extern const struct iwl_cfg iwlax201_cfg_snj_hr_b0;
 extern const struct iwl_cfg iwl_cfg_ma_a0_gf_a0;
 extern const struct iwl_cfg iwl_cfg_ma_a0_mr_a0;
 extern const struct iwl_cfg iwl_cfg_snj_a0_mr_a0;
+extern const struct iwl_cfg iwl_cfg_so_a0_hr_a0;
+extern const struct iwl_cfg iwl_cfg_quz_a0_hr_b0;
 #endif /* CONFIG_IWLMVM */
 
 #endif /* __IWL_CONFIG_H__ */
diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index ed3f5b7aa71e..c55faa388948 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
@@ -934,6 +934,11 @@  static const struct iwl_dev_info iwl_dev_info_table[] = {
 		      IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,
 		      IWL_CFG_ANY, IWL_CFG_ANY,
 		      iwl_quz_a0_hr1_b0, iwl_ax101_name),
+	_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
+		      IWL_CFG_MAC_TYPE_QUZ, SILICON_B_STEP,
+		      IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY,
+		      IWL_CFG_NO_160, IWL_CFG_ANY,
+		      iwl_cfg_quz_a0_hr_b0, iwl_ax203_name),
 
 /* Ma */
 	_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
@@ -952,6 +957,27 @@  static const struct iwl_dev_info iwl_dev_info_table[] = {
 		      IWL_CFG_ANY, IWL_CFG_ANY,
 		      iwl_cfg_snj_a0_mr_a0, iwl_ma_name),
 
+/* So with Hr */
+	_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
+		      IWL_CFG_MAC_TYPE_SO, IWL_CFG_ANY,
+		      IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY,
+		      IWL_CFG_NO_160, IWL_CFG_ANY,
+		      iwl_cfg_so_a0_hr_a0, iwl_ax203_name),
+	_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
+		      IWL_CFG_MAC_TYPE_SO, IWL_CFG_ANY,
+		      IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY,
+		      IWL_CFG_NO_160, IWL_CFG_ANY,
+		      iwl_cfg_so_a0_hr_a0, iwl_ax203_name),
+	_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
+		      IWL_CFG_MAC_TYPE_SO, IWL_CFG_ANY,
+		      IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,
+		      IWL_CFG_160, IWL_CFG_ANY,
+		      iwl_cfg_so_a0_hr_a0, iwl_ax101_name),
+	_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
+		      IWL_CFG_MAC_TYPE_SO, IWL_CFG_ANY,
+		      IWL_CFG_RF_TYPE_HR2, IWL_CFG_ANY,
+		      IWL_CFG_160, IWL_CFG_ANY,
+		      iwl_cfg_so_a0_hr_a0, iwl_ax201_name)
 
 #endif /* CONFIG_IWLMVM */
 };