2021-02-06 11:21:14

by Luca Coelho

[permalink] [raw]
Subject: [PATCH for v5.11] iwlwifi: add new cards for So and Qu family

From: Ihab Zhaika <[email protected]>

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

Signed-off-by: Ihab Zhaika <[email protected]>
Signed-off-by: Luca Coelho <[email protected]>
---
.../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(+)

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 */
};
--
2.30.0


2021-02-08 08:34:52

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH for v5.11] iwlwifi: add new cards for So and Qu family

Luca Coelho <[email protected]> wrote:

> From: Ihab Zhaika <[email protected]>
>
> add few PCI ID'S for So with Hr and Qu with Hr in AX family.
>
> Signed-off-by: Ihab Zhaika <[email protected]>
> Signed-off-by: Luca Coelho <[email protected]>

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

2021-02-08 08:45:52

by Luca Coelho

[permalink] [raw]
Subject: Re: [PATCH for v5.11] iwlwifi: add new cards for So and Qu family

On Mon, 2021-02-08 at 08:30 +0000, Kalle Valo wrote:
> Luca Coelho <[email protected]> wrote:
>
> > From: Ihab Zhaika <[email protected]>
> >
> > add few PCI ID'S for So with Hr and Qu with Hr in AX family.
> >
> > Signed-off-by: Ihab Zhaika <[email protected]>
> > Signed-off-by: Luca Coelho <[email protected]>
>
> 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.

2021-02-08 09:29:46

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH for v5.11] iwlwifi: add new cards for So and Qu family

Luca Coelho <[email protected]> writes:

> On Mon, 2021-02-08 at 08:30 +0000, Kalle Valo wrote:
>> Luca Coelho <[email protected]> wrote:
>>
>> > From: Ihab Zhaika <[email protected]>
>> >
>> > add few PCI ID'S for So with Hr and Qu with Hr in AX family.
>> >
>> > Signed-off-by: Ihab Zhaika <[email protected]>
>> > Signed-off-by: Luca Coelho <[email protected]>
>>
>> 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/[email protected]/

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

2021-02-10 11:39:06

by Luca Coelho

[permalink] [raw]
Subject: Re: [PATCH for v5.11] iwlwifi: add new cards for So and Qu family

Luca Coelho <[email protected]> wrote:

> From: Ihab Zhaika <[email protected]>
>
> add few PCI ID'S for So with Hr and Qu with Hr in AX family.
>
> Signed-off-by: Ihab Zhaika <[email protected]>
> Signed-off-by: Luca Coelho <[email protected]>

Patch applied to iwlwifi-next.git, thanks.

a70fd2c9bbd5 iwlwifi: add new cards for So and Qu family