Bug 217472 - Patch to Support Broadcom Bluetooth Adapter
Patch to Support Broadcom Bluetooth Adapter
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Kernel Maintainer List
Brian Brock
Depends On:
  Show dependency treegraph
Reported: 2006-11-27 21:15 EST by Jonathan Steffan
Modified: 2007-11-30 17:11 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-12-22 06:18:52 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Jonathan Steffan 2006-11-27 21:15:29 EST
Description of problem:
Broadcom bluetooth adaptor not working with bluetooth-alsa

Version-Release number of selected component (if applicable):
btsco 0.42
Built from:

How reproducible:

Steps to Reproduce:
1. Setup btsco
2. Try to use device
Actual results:
Only the microphone works. No audio is able to be sent to device. I am able to
make the device ring, and use the device to adjust the volume level, etc.

Expected results:
Audio will make it to the device.

Additional info:
The suggested patch was pulled from the sourceforge site. I don't know why, so I
pulled the patch from google cache:

--- linux/net/bluetooth/hci_event.c	2006-01-31 07:52:07.000000000 +0100
+++ linux/net/bluetooth/hci_event.c	2006-02-13 10:46:30.000000000 +0100
@@ -320,9 +320,9 @@
 		hdev->acl_mtu  = __le16_to_cpu(bs->acl_mtu);
-		hdev->sco_mtu  = bs->sco_mtu ? bs->sco_mtu : 64;
+		hdev->sco_mtu  = (bs->sco_mtu < 64) ? 64 : bs->sco_mtu;
 		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);
+		hdev->sco_pkts = hdev->sco_cnt = bs->sco_max_pkt ?
__le16_to_cpu(bs->sco_max_pkt) : 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);
Comment 1 Jonathan Steffan 2006-11-27 21:17:20 EST
Just to make the README more apparent:

Comment 2 Marcel Holtmann 2006-11-27 21:39:24 EST
This fix wasn't accepted upstream and never will be. Most Broadcom based
adapters have a quirk to fix their SCO MTU. If this adapter is not in the list,
you can use the force_scofix module parameter of the hci_usb driver to activate it.
Comment 3 Jonathan Steffan 2006-11-28 15:33:51 EST
Ok, how do I test this module parameter?
Comment 4 Jonathan Steffan 2006-12-22 06:18:52 EST
Well, using force_scofix does work. For the record:

Add the following to /etc/modprobe.conf:

options hci_usb force_scofix=1

Note You need to log in before you can comment on or make changes to this bug.