Linux bluetooth development
 help / color / mirror / Atom feed
* [PATCH] Bluetooth: hci_qca: WCN3988: Drop baudrate change vendor event
@ 2026-11-04  9:50 Shuai Zhang
  2026-11-04 14:08 ` Bartosz Golaszewski
  2026-11-04 16:34 ` bluez.test.bot
  0 siblings, 2 replies; 3+ messages in thread
From: Shuai Zhang @ 2026-11-04  9:50 UTC (permalink / raw)
  To: Bartosz Golaszewski, Marcel Holtmann, Luiz Augusto von Dentz
  Cc: linux-arm-msm, linux-bluetooth, linux-kernel, cheng.jiang,
	xiuzhuo.shang, wei.deng, jinwang.li, Shuai Zhang

Firmware download on the WCN3988 sometimes fails and is retried:

  Bluetooth: hci0: QCA TLV response size mismatch
  Bluetooth: hci0: QCA Failed to request file: qca/apbtfw11.tlv (-84)

The vendor event answering the baudrate change command can arrive late
and is then taken as the response of the last firmware segment, which
waits for any vendor event. Its length is 2 instead of the expected 3:

  < HCI Command: Vendor (0x3f|0x0000) plen 220    (last segment)
  > HCI Event: Vendor (0xff) plen 2
          92 01

Drop and wait for this event on the WCN3988.

Signed-off-by: Shuai Zhang <shuai.zhang@oss.qualcomm.com>
---
 drivers/bluetooth/hci_qca.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c
index 7089e9b63..4d502ee82 100644
--- a/drivers/bluetooth/hci_qca.c
+++ b/drivers/bluetooth/hci_qca.c
@@ -1521,6 +1521,7 @@ static int qca_set_speed(struct hci_uart *hu, enum qca_speed_type speed_type)
 		}
 
 		switch (soc_type) {
+		case QCA_WCN3988:
 		case QCA_WCN3990:
 			reinit_completion(&qca->drop_ev_comp);
 			set_bit(QCA_DROP_VENDOR_EVENT, &qca->flags);
@@ -1556,6 +1557,7 @@ static int qca_set_speed(struct hci_uart *hu, enum qca_speed_type speed_type)
 		}
 
 		switch (soc_type) {
+		case QCA_WCN3988:
 		case QCA_WCN3990:
 			/* Wait for the controller to send the vendor event
 			 * for the baudrate change command.
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-11-04 16:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-04  9:50 [PATCH] Bluetooth: hci_qca: WCN3988: Drop baudrate change vendor event Shuai Zhang
2026-11-04 14:08 ` Bartosz Golaszewski
2026-11-04 16:34 ` bluez.test.bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox