[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241210151636.2474809-1-quic_chejiang@quicinc.com>
Date: Tue, 10 Dec 2024 23:16:32 +0800
From: Cheng Jiang <quic_chejiang@...cinc.com>
To: Marcel Holtmann <marcel@...tmann.org>,
Luiz Augusto von Dentz
<luiz.dentz@...il.com>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski
<krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Bjorn Andersson
<andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>,
"Balakrishna
Godavarthi" <quic_bgodavar@...cinc.com>,
Rocky Liao <quic_rjliao@...cinc.com>
CC: <linux-bluetooth@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <linux-arm-msm@...r.kernel.org>,
<quic_chejiang@...cinc.com>, <quic_jiaymao@...cinc.com>,
<quic_shuaz@...cinc.com>, <quic_zijuhu@...cinc.com>,
<quic_mohamull@...cinc.com>
Subject: [PATCH v4 0/3] Expand firmware-name property to load specific
Expand the firmware-name property to specify the names of NVM and
rampatch firmware to load.
This update will support loading specific firmware (nvm and rampatch)
for certain chips, like the QCA6698 Bluetooth chip, which shares the
same IP core as the WCN6855 but has different RF components and RAM
sizes, requiring new firmware files.
Different connectivity boards may be attached to the same platform. For
example, QCA6698-based boards can support either a two-antenna or
three-antenna solution, both of which work on the sa8775p-ride platform.
Due to differences in connectivity boards and variations in RF
performance from different foundries, different NVM configurations are
used based on the board ID.
So In firmware-name, if the NVM file has an extension, the NVM file will
be used. Otherwise, the system will first try the .bNN (board ID) file,
and if that fails, it will fall back to the .bin file.
Possible configurations:
firmware-name = "QCA6698/hpnv21.bin", "QCA6698/hpbtfw21.tlv";
firmware-name = "QCA6698/hpnv21", "QCA6698/hpbtfw21.tlv";
firmware-name = "QCA6698/hpnv21.bin";
---
v4:
1. Split nvm and rampatch changes to 2 commits
2. Code fix according to review comments
v3:
1.Expand firmware-name property to specify the nvm and rampatch to
load.
2.Change the driver to support two items in firmware-name and choose
the NVM file according to board id if there is no extension in NVM
file.
3.Update the dts file to idendify the firmware for QCA6698.
---
Cheng Jiang (4):
dt-bindings: net: bluetooth: qca: Expand firmware-name property
Bluetooth: qca: Add support in firmware-name to load board specific
nvm
Bluetooth: qca: Expand firmware-name to load specific rampatch
arm64: dts: qcom: sa8775p-ride: Add firmware-name in BT node
.../net/bluetooth/qualcomm-bluetooth.yaml | 5 +-
arch/arm64/boot/dts/qcom/sa8775p-ride.dtsi | 1 +
drivers/bluetooth/btqca.c | 149 +++++++++++++-----
drivers/bluetooth/btqca.h | 5 +-
drivers/bluetooth/hci_qca.c | 22 ++-
5 files changed, 133 insertions(+), 49 deletions(-)
base-commit: ebe1b11614e079c5e366ce9bd3c8f44ca0fbcc1b
--
2.25.1
Powered by blists - more mailing lists