mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] Fix SCO on Broadcom Bluetooth adapters
@ 2006-03-14 11:12 Olivier Galibert
  2006-03-14 12:12 ` Pavel Machek
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Olivier Galibert @ 2006-03-14 11:12 UTC (permalink / raw)
  To: Hack inc., marcel, maxk, bluez-devel

Broadcom USB Bluetooth adapters report a maximum of zero SCO packets
in-flight, killing SCO.  Use a reasonable count instead in that case.

Signed-off-by: Olivier Galibert <galibert@pobox.com>

---

I don't think that could be reasonably done as a quirk.  Simple
examination of the .inf coming with the windows driver shows that 100+
different models may be having this problem.  Also, it can't break
already working adapters, so why bother.

 net/bluetooth/hci_event.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -324,6 +324,13 @@ static void hci_cc_info_param(struct hci
 		hdev->acl_pkts = hdev->acl_cnt = __le16_to_cpu(bs->acl_max_pkt);
 		hdev->sco_pkts = hdev->sco_cnt = __le16_to_cpu(bs->sco_max_pkt);
 
+		/* Some buggy USB bluetooth adapters, Broadcom in
+		   particular, answer zero as the max number of sco
+		   packets in flight.  Use a reasonable value
+		   instead */
+		if (hdev->sco_pkts == 0)
+			hdev->sco_pkts = hdev->sco_cnt = 8
+
 		BT_DBG("%s mtu: acl %d, sco %d max_pkt: acl %d, sco %d", hdev->name,
 			hdev->acl_mtu, hdev->sco_mtu, hdev->acl_pkts, hdev->sco_pkts);
 		break;

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

end of thread, other threads:[~2006-03-14 23:47 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-03-14 11:12 [PATCH] Fix SCO on Broadcom Bluetooth adapters Olivier Galibert
2006-03-14 12:12 ` Pavel Machek
2006-03-14 13:49 ` Marcel Holtmann
2006-03-14 14:08   ` Olivier Galibert
2006-03-14 22:27     ` Alan Cox
2006-03-14 23:47       ` Olivier Galibert
2006-03-14 17:39 ` Randy.Dunlap

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

all inboxes | Powered by JetHome®