QCA NVM file for the X13s (WCN6855)

From: Johan Hovold
Date: Thu May 02 2024 - 06:57:11 EST


Hi Zijun and Tim,

I noticed that you have both submitted firmware and NVM files for
QCA2066 to linux-firmware. [1][2]

I'm working on Linux support for the Lenovo ThinkPad X13s (Windows on
Arm, Snapdragon), which has the related WCN6855 controller that uses the
same firmware (hpbtfw21.tlv).

The current Linux driver is using the generic NVM file (hpnv21.bin) for
WCN6855, but connectivity is quite bad and I only get 2-3 meters of
range.

Switching to the board-specific NVM configuration (hpnv21b.b8c) that
came with the Windows driver make all issues go away and the range is
really good, but I'm not sure if that file is fully compatible with the
firmware used by the Linux driver.

Could you help us submit an NVM configuration file for the controller
with board id 0x008c to linux-firmware?

Bluetooth: hci0: setting up wcn6855
Bluetooth: hci0: QCA Product ID :0x00000013
Bluetooth: hci0: QCA SOC Version :0x400c1211
Bluetooth: hci0: QCA ROM Version :0x00000201
Bluetooth: hci0: QCA Patch Version:0x000038e6
Bluetooth: hci0: QCA controller version 0x12110201
Bluetooth: hci0: QCA Downloading qca/hpbtfw21.tlv
Bluetooth: hci0: qca_read_fw_board_id: bid = 8c
Bluetooth: hci0: QCA Downloading qca/hpnv21.bin

It looks like the NVM files should be updated in lockstep with the
firmware so if you could include that board in any future firmware
updates too that would be really helpful.

Johan


[1] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/qca?id=2ba1beaae0c649ce8a50baecc8df9e81cd524e65
[2] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/qca?id=598f5bd22361d7e92eebe8452d1f8013a1d35b9a