Re: QCA NVM file for the X13s (WCN6855)

From: Johan Hovold
Date: Thu May 02 2024 - 09:25:54 EST


On Thu, May 02, 2024 at 08:56:12PM +0800, quic_zijuhu wrote:
> On 5/2/2024 6:57 PM, Johan Hovold wrote:

> > 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).

> which SOC type does the machine use? WCN6855 or QCA2066?

It's WCN6855 but the Linux driver currently uses the firmware you pushed
for QCA2066.

> > 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
> it seems hpnv21b.b8c is a wrong NVM name.
> is it hpnv21g.b8c?

I've only tested with the NVM file without the "g" infix, but there
indeed also is a 'hpnv21g.b8c' in the Windows installation.

What is the difference between those two?

> > 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?
> >
> For Windows OS, there are relevant channel to deliver BT firmware.
> For Linux OS, we normally upload relevant BT firmware to linux-firmware.
>
> it seems customer would like to use Linux OS instead of preinstalled
> Windows OS for the machine.
> right?

Exactly. It's a Lenovo machine that comes with Windows pre-installed and
we're working on enabling Linux on it with some help from Lenovo.

> need customer to make a request for their requirements if the answer is
> yes for above question.

Lenovo has made requests for X13s firmware from Qualcomm and pushed it
to linux-firmware [1], but they have not yet been able to get Qualcomm
to provide an NVM configuration file for Bluetooth (I think the problem
may be finding the right person to talk to inside Qualcomm).

So I was hoping maybe you could help us with this since the difference
between 'hpnv21.bin' that you pushed to linux-firmware and what came
with Windows appears to be really small (e.g. just a few bytes).

Johan

[1] https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/qcom?id=4ae4ae88918928e15006eb129ad981aa58216b59