2020-11-21 22:13:21

by Heiner Kallweit

[permalink] [raw]
Subject: Firmware version read error on Intel AX210

I have a new AX210 WiFi/Bluetooth card and btintel_read_version() fails
with error -22 (EINVAL). Underlying error is that the firmware version
read command returns with hdev->req_result = 18 (0x12). (req_status = 0)
>From what I've read this means invalid command parameters.
Did something change with AX210 and command 0xfc05 requires specific
parameters now? Or what else may cause this issue?


2020-11-21 23:02:12

by Heiner Kallweit

[permalink] [raw]
Subject: Re: Firmware version read error on Intel AX210

Am 21.11.2020 um 23:12 schrieb Heiner Kallweit:
> I have a new AX210 WiFi/Bluetooth card and btintel_read_version() fails
> with error -22 (EINVAL). Underlying error is that the firmware version
> read command returns with hdev->req_result = 18 (0x12). (req_status = 0)
>>From what I've read this means invalid command parameters.
> Did something change with AX210 and command 0xfc05 requires specific
> parameters now? Or what else may cause this issue?
>
Seems AX210 uses the new TLV infrastructure. btintel_read_version_tlv()
returns valid data. Will TLV/AX210 support be added for 5.11?

2020-11-22 08:36:19

by Kiran K

[permalink] [raw]
Subject: RE: Firmware version read error on Intel AX210

Hi Heiner Kallweit,

The patches to support Intel AX210 are not fully upstreamed into bluetooth-next. Final patch set review is in progress - https://patchwork.kernel.org/project/bluetooth/list/?series=387475

Regards,
Kiran

> -----Original Message-----
> From: Heiner Kallweit <[email protected]>
> Sent: Sunday, November 22, 2020 4:30 AM
> To: Kiran K <[email protected]>; K, Kiran <[email protected]>
> Cc: BlueZ development <[email protected]>
> Subject: Re: Firmware version read error on Intel AX210
>
> Am 21.11.2020 um 23:12 schrieb Heiner Kallweit:
> > I have a new AX210 WiFi/Bluetooth card and btintel_read_version()
> > fails with error -22 (EINVAL). Underlying error is that the firmware
> > version read command returns with hdev->req_result = 18 (0x12).
> > (req_status = 0)
> >>From what I've read this means invalid command parameters.
> > Did something change with AX210 and command 0xfc05 requires specific
> > parameters now? Or what else may cause this issue?
> >
> Seems AX210 uses the new TLV infrastructure. btintel_read_version_tlv()
> returns valid data. Will TLV/AX210 support be added for 5.11?

2020-11-22 17:44:44

by Heiner Kallweit

[permalink] [raw]
Subject: Re: Firmware version read error on Intel AX210

Am 22.11.2020 um 09:35 schrieb K, Kiran:
> Hi Heiner Kallweit,
>
> The patches to support Intel AX210 are not fully upstreamed into bluetooth-next. Final patch set review is in progress - https://patchwork.kernel.org/project/bluetooth/list/?series=387475
>
Good to hear and thanks for the link to the patch series.
How about firmware, is it submitted to linux-firmware in parallel?


Following is unrelated, however I hope you're the right addressee too.

In btusb.c we have the following code. I interpret this in a way
that once firmware was loaded the driver will never check for
updated firmware.
Shouldn't the driver always read the firmware file available on
the system and check its version against the firmware version
the device has (and apply it if it's newer)?
But maybe I miss something ..

bt_dev_info(hdev, "read Intel version: %02x%02x%02x%02x%02x%02x%02x%02x%02x",
ver.hw_platform, ver.hw_variant, ver.hw_revision,
ver.fw_variant, ver.fw_revision, ver.fw_build_num,
ver.fw_build_ww, ver.fw_build_yy, ver.fw_patch_num);

/* fw_patch_num indicates the version of patch the device currently
* have. If there is no patch data in the device, it is always 0x00.
* So, if it is other than 0x00, no need to patch the device again.
*/
if (ver.fw_patch_num) {
bt_dev_info(hdev, "Intel device is already patched. "
"patch num: %02x", ver.fw_patch_num);
goto complete;
}



> Regards,
> Kiran
>
Thank you, Heiner

>> -----Original Message-----
>> From: Heiner Kallweit <[email protected]>
>> Sent: Sunday, November 22, 2020 4:30 AM
>> To: Kiran K <[email protected]>; K, Kiran <[email protected]>
>> Cc: BlueZ development <[email protected]>
>> Subject: Re: Firmware version read error on Intel AX210
>>
>> Am 21.11.2020 um 23:12 schrieb Heiner Kallweit:
>>> I have a new AX210 WiFi/Bluetooth card and btintel_read_version()
>>> fails with error -22 (EINVAL). Underlying error is that the firmware
>>> version read command returns with hdev->req_result = 18 (0x12).
>>> (req_status = 0)
>>> >From what I've read this means invalid command parameters.
>>> Did something change with AX210 and command 0xfc05 requires specific
>>> parameters now? Or what else may cause this issue?
>>>
>> Seems AX210 uses the new TLV infrastructure. btintel_read_version_tlv()
>> returns valid data. Will TLV/AX210 support be added for 5.11?

2020-11-23 17:30:02

by Kiran K

[permalink] [raw]
Subject: RE: Firmware version read error on Intel AX210

Hi,

> -----Original Message-----
> From: Heiner Kallweit <[email protected]>
> Sent: Sunday, November 22, 2020 11:12 PM
> To: K, Kiran <[email protected]>; Kiran K <[email protected]>
> Cc: BlueZ development <[email protected]>; Srivatsa,
> Ravishankar <[email protected]>; Tumkur Narayan, Chethan
> <[email protected]>; Marcel Holtmann
> <[email protected]>
> Subject: Re: Firmware version read error on Intel AX210
>
> Am 22.11.2020 um 09:35 schrieb K, Kiran:
> > Hi Heiner Kallweit,
> >
> > The patches to support Intel AX210 are not fully upstreamed into
> > bluetooth-next. Final patch set review is in progress -
> > https://patchwork.kernel.org/project/bluetooth/list/?series=387475
> >
> Good to hear and thanks for the link to the patch series.
> How about firmware, is it submitted to linux-firmware in parallel?
>

I am working on this. I will be submitting firmware by this week.
>
> Following is unrelated, however I hope you're the right addressee too.
>
> In btusb.c we have the following code. I interpret this in a way that once
> firmware was loaded the driver will never check for updated firmware.
> Shouldn't the driver always read the firmware file available on the system
> and check its version against the firmware version the device has (and apply
> it if it's newer)?
> But maybe I miss something ..
>
> bt_dev_info(hdev, "read Intel version:
> %02x%02x%02x%02x%02x%02x%02x%02x%02x",
> ver.hw_platform, ver.hw_variant, ver.hw_revision,
> ver.fw_variant, ver.fw_revision, ver.fw_build_num,
> ver.fw_build_ww, ver.fw_build_yy, ver.fw_patch_num);
>
> /* fw_patch_num indicates the version of patch the device currently
> * have. If there is no patch data in the device, it is always 0x00.
> * So, if it is other than 0x00, no need to patch the device again.
> */
> if (ver.fw_patch_num) {
> bt_dev_info(hdev, "Intel device is already patched. "
> "patch num: %02x", ver.fw_patch_num);
> goto complete;
> }
>
>
>
> > Regards,
> > Kiran
> >
> Thank you, Heiner
>
> >> -----Original Message-----
> >> From: Heiner Kallweit <[email protected]>
> >> Sent: Sunday, November 22, 2020 4:30 AM
> >> To: Kiran K <[email protected]>; K, Kiran <[email protected]>
> >> Cc: BlueZ development <[email protected]>
> >> Subject: Re: Firmware version read error on Intel AX210
> >>
> >> Am 21.11.2020 um 23:12 schrieb Heiner Kallweit:
> >>> I have a new AX210 WiFi/Bluetooth card and btintel_read_version()
> >>> fails with error -22 (EINVAL). Underlying error is that the firmware
> >>> version read command returns with hdev->req_result = 18 (0x12).
> >>> (req_status = 0)
> >>> >From what I've read this means invalid command parameters.
> >>> Did something change with AX210 and command 0xfc05 requires specific
> >>> parameters now? Or what else may cause this issue?
> >>>
> >> Seems AX210 uses the new TLV infrastructure.
> >> btintel_read_version_tlv() returns valid data. Will TLV/AX210 support be
> added for 5.11?

Regards,
Kiran