2023-01-02 02:47:21

by Aiden Leong

[permalink] [raw]
Subject: [PATCH 1/2] iwlwifi: pcie: add support for AX101NGW

AX101NGW(0x4DF0, 0x0244) should have tx_with_siso_diversity unset.

Signed-off-by: Aiden Leong <[email protected]>
---
Ref Commit: 9352ed0165ff4313ab340c979446c3d64c531f7a
Tested on my own device.
---
drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index 99768d6a6032..a46df1320372 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
@@ -986,6 +986,11 @@ static const struct iwl_dev_info iwl_dev_info_table[] = {
iwl_qu_c0_hr_b0, iwl_ax201_name),

/* QuZ */
+ _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
+ IWL_CFG_MAC_TYPE_QUZ, SILICON_B_STEP,
+ IWL_CFG_RF_TYPE_HR1, IWL_CFG_RF_ID_HR1,
+ IWL_CFG_NO_160, IWL_CFG_CORES_BT, IWL_CFG_NO_CDB, IWL_CFG_NO_JACKET,
+ iwl_cfg_quz_a0_hr_b0, iwl_ax101_name),
_IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,
--
2.39.0


2023-01-02 13:39:46

by Greenman, Gregory

[permalink] [raw]
Subject: Re: [PATCH 1/2] iwlwifi: pcie: add support for AX101NGW

On Mon, 2023-01-02 at 10:40 +0800, Aiden Leong wrote:
> AX101NGW(0x4DF0, 0x0244) should have tx_with_siso_diversity unset.

Why it should be unset? Which kernel do you have?
Commit 3f910a25839b13436bf0a22186f1698b23eafb91 added AX101 device.

>
> Signed-off-by: Aiden Leong <[email protected]>
> ---
> Ref Commit: 9352ed0165ff4313ab340c979446c3d64c531f7a
> Tested on my own device.
> ---
>  drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> index 99768d6a6032..a46df1320372 100644
> --- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> +++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> @@ -986,6 +986,11 @@ static const struct iwl_dev_info iwl_dev_info_table[] = {
>                       iwl_qu_c0_hr_b0, iwl_ax201_name),
>  
>         /* QuZ */
> +       _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
> +                     IWL_CFG_MAC_TYPE_QUZ, SILICON_B_STEP,
> +                     IWL_CFG_RF_TYPE_HR1, IWL_CFG_RF_ID_HR1,
> +                     IWL_CFG_NO_160, IWL_CFG_CORES_BT, IWL_CFG_NO_CDB, IWL_CFG_NO_JACKET,
> +                     iwl_cfg_quz_a0_hr_b0, iwl_ax101_name),
>         _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
>                       IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
>                       IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,

2023-01-02 14:41:30

by Aiden Leong

[permalink] [raw]
Subject: Re: [PATCH 1/2] iwlwifi: pcie: add support for AX101NGW

1. I know nothing about what `tx_with_siso_diversity` is. It's just a
hardware flag to me. Main line.

2. I have the real device. Tested. Two photos was sent to Luca Coelho as
well.

3. /drivers/net/wireless/intel/iwlwifi/pcie/drv.c#L623

> IWL_DEV_INFO(0x4DF0, 0x1651, killer1650s_2ax_cfg_qu_b0_hr_b0, NULL),

The device I have is 0x4DF0, 0x0244. They share the same device ID.

4. I have narrowed down my code with _mac_step, _rf_type, _rf_id,
_no_160 and _cores, so it should be safe to other devices.

Happy New Year

Aiden

On 2023/1/2 21:32, Greenman, Gregory wrote:
> On Mon, 2023-01-02 at 10:40 +0800, Aiden Leong wrote:
>> AX101NGW(0x4DF0, 0x0244) should have tx_with_siso_diversity unset.
> Why it should be unset? Which kernel do you have?
> Commit 3f910a25839b13436bf0a22186f1698b23eafb91 added AX101 device.
>
>> Signed-off-by: Aiden Leong <[email protected]>
>> ---
>> Ref Commit: 9352ed0165ff4313ab340c979446c3d64c531f7a
>> Tested on my own device.
>> ---
>>  drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 5 +++++
>>  1 file changed, 5 insertions(+)
>>
>> diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
>> index 99768d6a6032..a46df1320372 100644
>> --- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
>> +++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
>> @@ -986,6 +986,11 @@ static const struct iwl_dev_info iwl_dev_info_table[] = {
>>                       iwl_qu_c0_hr_b0, iwl_ax201_name),
>>
>>         /* QuZ */
>> +       _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
>> +                     IWL_CFG_MAC_TYPE_QUZ, SILICON_B_STEP,
>> +                     IWL_CFG_RF_TYPE_HR1, IWL_CFG_RF_ID_HR1,
>> +                     IWL_CFG_NO_160, IWL_CFG_CORES_BT, IWL_CFG_NO_CDB, IWL_CFG_NO_JACKET,
>> +                     iwl_cfg_quz_a0_hr_b0, iwl_ax101_name),
>>         _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
>>                       IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
>>                       IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,

2023-01-05 06:45:26

by Greenman, Gregory

[permalink] [raw]
Subject: Re: [PATCH 1/2] iwlwifi: pcie: add support for AX101NGW

On Mon, 2023-01-02 at 22:32 +0800, Aiden Leong wrote:
> 1. I know nothing about what `tx_with_siso_diversity` is. It's just a
> hardware flag to me. Main line.
>
> 2. I have the real device. Tested. Two photos was sent to Luca Coelho as
> well.
>
> 3. /drivers/net/wireless/intel/iwlwifi/pcie/drv.c#L623
>
>  > IWL_DEV_INFO(0x4DF0, 0x1651, killer1650s_2ax_cfg_qu_b0_hr_b0, NULL),
>
> The device I have is 0x4DF0, 0x0244. They share the same device ID.
>
> 4. I have narrowed down my code with _mac_step, _rf_type, _rf_id,
> _no_160 and _cores, so it should be safe to other devices.
>
> Happy New Year
>
> Aiden
>
> On 2023/1/2 21:32, Greenman, Gregory wrote:
> > On Mon, 2023-01-02 at 10:40 +0800, Aiden Leong wrote:
> > > AX101NGW(0x4DF0, 0x0244) should have tx_with_siso_diversity unset.
> > Why it should be unset? Which kernel do you have?
> > Commit 3f910a25839b13436bf0a22186f1698b23eafb91 added AX101 device.
> >
> > > Signed-off-by: Aiden Leong <[email protected]>
> > > ---
> > > Ref Commit: 9352ed0165ff4313ab340c979446c3d64c531f7a
> > > Tested on my own device.
> > > ---
> > >   drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 5 +++++
> > >   1 file changed, 5 insertions(+)
> > >
> > > diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > index 99768d6a6032..a46df1320372 100644
> > > --- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > +++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > @@ -986,6 +986,11 @@ static const struct iwl_dev_info iwl_dev_info_table[] = {
> > >                        iwl_qu_c0_hr_b0, iwl_ax201_name),
> > >  
> > >          /* QuZ */
> > > +       _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
> > > +                     IWL_CFG_MAC_TYPE_QUZ, SILICON_B_STEP,
> > > +                     IWL_CFG_RF_TYPE_HR1, IWL_CFG_RF_ID_HR1,
> > > +                     IWL_CFG_NO_160, IWL_CFG_CORES_BT, IWL_CFG_NO_CDB, IWL_CFG_NO_JACKET,
> > > +                     iwl_cfg_quz_a0_hr_b0, iwl_ax101_name),
> > >          _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
> > >                        IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
> > >                        IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,

So, still the only thing that this patch does is to *disable* tx_with_siso_diversity flag.
The configuration one line below it (looking at Linux 6.2-rc2) is essentially the same
(but with wildcards instead), the only thing different is using iwl_quz_a0_hr1_b0 instead
of iwl_cfg_quz_a0_hr_b0. These two configurations differ only in setting tx_with_siso_diversity.
Thus the question, what is the reason for the change? Did you experienced FW crashes,
throughput degardataion?

2023-01-05 08:45:16

by Aiden Leong

[permalink] [raw]
Subject: Re: [PATCH 1/2] iwlwifi: pcie: add support for AX101NGW

On 2023年1月5日星期四 CST 下午2:39:52 Greenman, Gregory wrote:
> On Mon, 2023-01-02 at 22:32 +0800, Aiden Leong wrote:
>
> > 1. I know nothing about what `tx_with_siso_diversity` is. It's just a
> > hardware flag to me. Main line.
> >
> > 2. I have the real device. Tested. Two photos was sent to Luca Coelho as
> > well.
> >
> > 3. /drivers/net/wireless/intel/iwlwifi/pcie/drv.c#L623
> >
> > > IWL_DEV_INFO(0x4DF0, 0x1651, killer1650s_2ax_cfg_qu_b0_hr_b0, NULL),
> >
> > The device I have is 0x4DF0, 0x0244. They share the same device ID.
> >
> > 4. I have narrowed down my code with _mac_step, _rf_type, _rf_id,
> > _no_160 and _cores, so it should be safe to other devices.
> >
> > Happy New Year
> >
> > Aiden
> >
> > On 2023/1/2 21:32, Greenman, Gregory wrote:
> >
> > > On Mon, 2023-01-02 at 10:40 +0800, Aiden Leong wrote:
> > >
> > > > AX101NGW(0x4DF0, 0x0244) should have tx_with_siso_diversity unset.
> > >
> > > Why it should be unset? Which kernel do you have?
> > > Commit 3f910a25839b13436bf0a22186f1698b23eafb91 added AX101 device.
> > >
> > >
> > > > Signed-off-by: Aiden Leong <[email protected]>
> > > > ---
> > > > Ref Commit: 9352ed0165ff4313ab340c979446c3d64c531f7a
> > > > Tested on my own device.
> > > > ---
> > > > drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 5 +++++
> > > > 1 file changed, 5 insertions(+)
> > > >
> > > > diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > > b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index
> > > > 99768d6a6032..a46df1320372 100644
> > > > --- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > > +++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > > @@ -986,6 +986,11 @@ static const struct iwl_dev_info
> > > > iwl_dev_info_table[] = {
iwl_qu_c0_hr_b0, iwl_ax201_name),
> > > >
> > > > /* QuZ */
> > > > + _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
> > > > + IWL_CFG_MAC_TYPE_QUZ, SILICON_B_STEP,
> > > > + IWL_CFG_RF_TYPE_HR1, IWL_CFG_RF_ID_HR1,
> > > > + IWL_CFG_NO_160, IWL_CFG_CORES_BT,
> > > > IWL_CFG_NO_CDB, IWL_CFG_NO_JACKET,
+
> > > > iwl_cfg_quz_a0_hr_b0, iwl_ax101_name),
> > > > _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
> > > > IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
> > > > IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,
>
>
> So, still the only thing that this patch does is to *disable*
> tx_with_siso_diversity flag.
The configuration one line below it (looking
> at Linux 6.2-rc2) is essentially the same (but with wildcards instead), the
> only thing different is using iwl_quz_a0_hr1_b0 instead of
> iwl_cfg_quz_a0_hr_b0. These two configurations differ only in setting
> tx_with_siso_diversity. Thus the question, what is the reason for the
> change? Did you experienced FW crashes, throughput degardataion?

Correct.

1. The FW crashes with "NMI_INTERRUPT_UNKNOW". Not interface shows up
via `ip a`.

2. With iwl_cfg_quz_a0_hr_b0, it works. However, I get
"NMI_INTERRUPT_UMAC_FATAL " in dmesg. Throughput degardataion not tested.

Please let me know if I should send you more info for further debugging.

Cheers,
Aiden Leong


Attachments:
signature.asc (499.00 B)
This is a digitally signed message part.

2023-01-19 15:38:11

by Greenman, Gregory

[permalink] [raw]
Subject: Re: [PATCH 1/2] iwlwifi: pcie: add support for AX101NGW

On Thu, 2023-01-05 at 16:41 +0800, Aiden Leong wrote:
> On 2023年1月5日星期四 CST 下午2:39:52 Greenman, Gregory wrote:
> > On Mon, 2023-01-02 at 22:32 +0800, Aiden Leong wrote:
> >
> > > 1. I know nothing about what `tx_with_siso_diversity` is. It's just a
> > > hardware flag to me. Main line.
> > >
> > > 2. I have the real device. Tested. Two photos was sent to Luca Coelho as
> > > well.
> > >
> > > 3. /drivers/net/wireless/intel/iwlwifi/pcie/drv.c#L623
> > >
> > >  > IWL_DEV_INFO(0x4DF0, 0x1651, killer1650s_2ax_cfg_qu_b0_hr_b0, NULL),
> > >
> > > The device I have is 0x4DF0, 0x0244. They share the same device ID.
> > >
> > > 4. I have narrowed down my code with _mac_step, _rf_type, _rf_id,
> > > _no_160 and _cores, so it should be safe to other devices.
> > >
> > > Happy New Year
> > >
> > > Aiden
> > >
> > > On 2023/1/2 21:32, Greenman, Gregory wrote:
> > >
> > > > On Mon, 2023-01-02 at 10:40 +0800, Aiden Leong wrote:
> > > >
> > > > > AX101NGW(0x4DF0, 0x0244) should have tx_with_siso_diversity unset.
> > > >
> > > > Why it should be unset? Which kernel do you have?
> > > > Commit 3f910a25839b13436bf0a22186f1698b23eafb91 added AX101 device.
> > > >
> > > >
> > > > > Signed-off-by: Aiden Leong <[email protected]>
> > > > > ---
> > > > > Ref Commit: 9352ed0165ff4313ab340c979446c3d64c531f7a
> > > > > Tested on my own device.
> > > > > ---
> > > > >   drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 5 +++++
> > > > >   1 file changed, 5 insertions(+)
> > > > >
> > > > > diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > > > b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
>  index
> > > > > 99768d6a6032..a46df1320372 100644
> > > > > --- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > > > +++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
> > > > > @@ -986,6 +986,11 @@ static const struct iwl_dev_info
> > > > > iwl_dev_info_table[] = {
>  iwl_qu_c0_hr_b0, iwl_ax201_name),
> > > > >  
> > > > >          /* QuZ */
> > > > > +       _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
> > > > > +                     IWL_CFG_MAC_TYPE_QUZ, SILICON_B_STEP,
> > > > > +                     IWL_CFG_RF_TYPE_HR1, IWL_CFG_RF_ID_HR1,
> > > > > +                     IWL_CFG_NO_160, IWL_CFG_CORES_BT,
> > > > > IWL_CFG_NO_CDB, IWL_CFG_NO_JACKET,
>  +                   
> > > > > iwl_cfg_quz_a0_hr_b0, iwl_ax101_name),
> > > > >          _IWL_DEV_INFO(IWL_CFG_ANY, IWL_CFG_ANY,
> > > > >                        IWL_CFG_MAC_TYPE_QUZ, IWL_CFG_ANY,
> > > > >                        IWL_CFG_RF_TYPE_HR1, IWL_CFG_ANY,
> >
> >
> > So, still the only thing that this patch does is to *disable*
> > tx_with_siso_diversity flag.
>  The configuration one line below it (looking
> > at Linux 6.2-rc2) is essentially the same (but with wildcards instead), the
> > only thing different is using iwl_quz_a0_hr1_b0 instead of
> > iwl_cfg_quz_a0_hr_b0. These two configurations differ only in setting
> > tx_with_siso_diversity. Thus the question, what is the reason for the
> > change? Did you experienced FW crashes, throughput degardataion?
>
> Correct.
>
> 1. The FW crashes with "NMI_INTERRUPT_UNKNOW". Not interface shows up
> via `ip a`.
>
> 2. With iwl_cfg_quz_a0_hr_b0, it works. However, I get
> "NMI_INTERRUPT_UMAC_FATAL " in dmesg. Throughput degardataion not tested.
>
> Please let me know if I should send you more info for further debugging.
>
> Cheers,
> Aiden Leong

Sorry for the long delay, it's actually a bug in the definition that we have.
This device has only one antenna, so no diversity is possible. It means,
that no need to add a new entry, we need to fix the existing one (the one
below that you added) to have there iwl_cfg_quz_a0_hr_b0. Please tell me
if you wish to do it, or I can fix it.

Thanks for pointing out.