From: Shuai Zhang quic_shuaz@quicinc.com
[ Upstream commit a8b38d19857d42a1f2e90c9d9b0f74de2500acd7 ]
The new platform uses the QCA2066 chip along with a new board ID, which requires a dedicated firmware file to ensure proper initialization. Without this entry, the driver cannot locate and load the correct firmware, resulting in Bluetooth bring-up failure.
This patch adds a new entry to the firmware table for QCA2066 so that the driver can correctly identify the board ID and load the appropriate firmware from 'qca/QCA2066/' in the linux-firmware repository.
Signed-off-by: Shuai Zhang quic_shuaz@quicinc.com Acked-by: Dmitry Baryshkov dmitry.baryshkov@oss.qualcomm.com Signed-off-by: Luiz Augusto von Dentz luiz.von.dentz@intel.com Signed-off-by: Sasha Levin sashal@kernel.org ---
LLM Generated explanations, may be completely bogus:
### Backport Considerations
The prerequisite QCA2066 support was introduced in v6.17 (commit a3f9f6dd047af). This means: - Only 6.17.y stable tree would benefit from this backport - Earlier LTS trees (6.12.y, 6.6.y, 6.1.y, 5.15.y) don't have the required infrastructure
## Summary
| Criterion | Assessment | |-----------|------------| | Bug fix? | ✅ Fixes Bluetooth bring-up failure | | Obviously correct? | ✅ Single table entry matching existing pattern | | Small and contained? | ✅ 1 line, 1 file | | Tested? | ✅ Acked by Qualcomm developer, signed by maintainer | | Risk? | ✅ Extremely low - isolated hardware variant | | User impact? | ✅ Complete Bluetooth loss without fix | | Exception category? | ✅ NEW DEVICE IDs (board_id addition) |
**Conclusion:**
This is a textbook example of the "NEW DEVICE IDs" stable exception. It adds a single board_id entry to an existing firmware lookup table to enable Bluetooth on a new hardware variant. The change: - Fixes a real user problem (non-working Bluetooth) - Is trivially small and obviously correct - Has essentially zero regression risk - Only affects new hardware that wouldn't work otherwise
While it lacks explicit stable tags, this type of hardware enablement is routinely accepted for stable backporting because it matches the pattern of USB/PCI ID additions. The only limitation is that backporting only applies to 6.17.y since the QCA2066 infrastructure doesn't exist in earlier kernels.
**YES**
drivers/bluetooth/btusb.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c index a5b73e0d271f3..9a923918bf741 100644 --- a/drivers/bluetooth/btusb.c +++ b/drivers/bluetooth/btusb.c @@ -3269,6 +3269,7 @@ static const struct qca_device_info qca_devices_table[] = {
static const struct qca_custom_firmware qca_custom_btfws[] = { { 0x00130201, 0x030A, "QCA2066" }, + { 0x00130201, 0x030B, "QCA2066" }, { }, };