Skip to content

Commit 9511f88

Browse files
author
Bastien Nocera
committed
Bluetooth: btnxpuart: Fix glitches seen in dual A2DP streaming
JIRA: https://issues.redhat.com/browse/RHEL-74483 commit 7de119b Author: Neeraj Sanjay Kale <neeraj.sanjaykale@nxp.com> Date: Mon Jan 20 19:49:46 2025 +0530 Bluetooth: btnxpuart: Fix glitches seen in dual A2DP streaming This fixes a regression caused by previous commit for fixing truncated ACL data, which is causing some intermittent glitches when running two A2DP streams. serdev_device_write_buf() is the root cause of the glitch, which is reverted, and the TX work will continue to write until the queue is empty. This change fixes both issues. No A2DP streaming glitches or truncated ACL data issue observed. Fixes: 8023dd2 ("Bluetooth: btnxpuart: Fix driver sending truncated data") Fixes: 689ca16 ("Bluetooth: NXP: Add protocol support for NXP Bluetooth chipsets") Signed-off-by: Neeraj Sanjay Kale <neeraj.sanjaykale@nxp.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> Signed-off-by: Bastien Nocera <bnocera@redhat.com>
1 parent d72f3d7 commit 9511f88

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

drivers/bluetooth/btnxpuart.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1381,13 +1381,12 @@ static void btnxpuart_tx_work(struct work_struct *work)
13811381

13821382
while ((skb = nxp_dequeue(nxpdev))) {
13831383
len = serdev_device_write_buf(serdev, skb->data, skb->len);
1384-
serdev_device_wait_until_sent(serdev, 0);
13851384
hdev->stat.byte_tx += len;
13861385

13871386
skb_pull(skb, len);
13881387
if (skb->len > 0) {
13891388
skb_queue_head(&nxpdev->txq, skb);
1390-
break;
1389+
continue;
13911390
}
13921391

13931392
switch (hci_skb_pkt_type(skb)) {

0 commit comments

Comments
 (0)