From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <454F9626.8020806@baldauf.org> Date: Mon, 06 Nov 2006 21:08:06 +0100 From: =?ISO-8859-1?Q?Xu=E2n_Baldauf?= MIME-Version: 1.0 To: Marcel Holtmann CC: bluez-devel@lists.sourceforge.net Subject: Re: [patch] Broadcom BCM2045 SCO workaround References: <454F7267.9010409@baldauf.org> <1162834966.31808.58.camel@aeonflux.holtmann.net> In-Reply-To: <1162834966.31808.58.camel@aeonflux.holtmann.net> Content-Type: multipart/alternative; boundary="------------070609080700010208050201" List-ID: This is a multi-part message in MIME format. --------------070609080700010208050201 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Marcel Holtmann wrote: > Hi Xuan, > Hello Marcel, > >> The Broadcom BCM2045 chipset seems to be also one of those chipsets >> which report the SCO maximum packet incorrectly. The attached patch >> works around this problem. With this workaround, a bluetooth USB >> dongle with this chipset is able to send SCO data correctly. >> >> The fix was verified using this USB dongle (MSI StarKey 2.0 (Ver >> 222-BW)) >> Bus 002 Device 004: ID 0a5c:2101 Broadcom Corp. >> Device Descriptor: >> bLength 18 >> bDescriptorType 1 >> bcdUSB 2.00 >> bDeviceClass 224 Wireless >> bDeviceSubClass 1 Radio Frequency >> bDeviceProtocol 1 Bluetooth >> bMaxPacketSize0 64 >> idVendor 0x0a5c Broadcom Corp. >> idProduct 0x2101 >> bcdDevice 0.00 >> iManufacturer 1 Broadcom Corp >> iProduct 2 BCM92045DG Non-UHE >> iSerial 0 >> bNumConfigurations 1 >> > > is this a dongle with HID proxy support or not. If yes, then you need > the HCI_RESET quirk otherwise you don't. So please check if it still > works after not including the HCI_RESET quirk. > It seems that HCI_RESET is not needed. (Interestingly, during testing, I now encounter in about 20% of the cases very loud noise. This seems like wrong data being played (like a synchronization error). However, this problem happens both with and without HCI_RESET.) > Regards > > Marcel > > ciao, Xuân. --------------070609080700010208050201 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Marcel Holtmann wrote:
Hi Xuan,
  
Hello Marcel,
  
The Broadcom BCM2045 chipset seems to be also one of those chipsets
which report the SCO maximum packet incorrectly. The attached patch
works around this problem. With this workaround, a bluetooth USB
dongle with this chipset is able to send SCO data correctly.

The fix was verified using this USB dongle (MSI StarKey 2.0 (Ver
222-BW))
        Bus 002 Device 004: ID 0a5c:2101 Broadcom Corp.
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               2.00
          bDeviceClass          224 Wireless
          bDeviceSubClass         1 Radio Frequency
          bDeviceProtocol         1 Bluetooth
          bMaxPacketSize0        64
          idVendor           0x0a5c Broadcom Corp.
          idProduct          0x2101
          bcdDevice            0.00
          iManufacturer           1 Broadcom Corp
          iProduct                2 BCM92045DG Non-UHE
          iSerial                 0
          bNumConfigurations      1
    

is this a dongle with HID proxy support or not. If yes, then you need
the HCI_RESET quirk otherwise you don't. So please check if it still
works after not including the HCI_RESET quirk.
  
It seems that HCI_RESET is not needed. (Interestingly, during testing, I now encounter in about 20% of the cases very loud noise. This seems like wrong data being played (like a synchronization error). However, this problem happens both with and without HCI_RESET.)
Regards

Marcel

  
ciao,
Xuân.


--------------070609080700010208050201-- From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Marcel Holtmann To: =?ISO-8859-1?Q?Xu=E2n?= Baldauf In-Reply-To: <454F7267.9010409@baldauf.org> References: <454F7267.9010409@baldauf.org> Date: Mon, 06 Nov 2006 18:42:46 +0100 Message-Id: <1162834966.31808.58.camel@aeonflux.holtmann.net> Mime-Version: 1.0 Cc: bluez-devel@lists.sourceforge.net Subject: Re: [Bluez-devel] [patch] Broadcom BCM2045 SCO workaround Reply-To: BlueZ development List-Id: BlueZ development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Sender: bluez-devel-bounces@lists.sourceforge.net Errors-To: bluez-devel-bounces@lists.sourceforge.net Hi Xuan, > The Broadcom BCM2045 chipset seems to be also one of those chipsets > which report the SCO maximum packet incorrectly. The attached patch > works around this problem. With this workaround, a bluetooth USB > dongle with this chipset is able to send SCO data correctly. > > The fix was verified using this USB dongle (MSI StarKey 2.0 (Ver > 222-BW)) > Bus 002 Device 004: ID 0a5c:2101 Broadcom Corp. > Device Descriptor: > bLength 18 > bDescriptorType 1 > bcdUSB 2.00 > bDeviceClass 224 Wireless > bDeviceSubClass 1 Radio Frequency > bDeviceProtocol 1 Bluetooth > bMaxPacketSize0 64 > idVendor 0x0a5c Broadcom Corp. > idProduct 0x2101 > bcdDevice 0.00 > iManufacturer 1 Broadcom Corp > iProduct 2 BCM92045DG Non-UHE > iSerial 0 > bNumConfigurations 1 is this a dongle with HID proxy support or not. If yes, then you need the HCI_RESET quirk otherwise you don't. So please check if it still works after not including the HCI_RESET quirk. Regards Marcel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Bluez-devel mailing list Bluez-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bluez-devel From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <454F7267.9010409@baldauf.org> Date: Mon, 06 Nov 2006 18:35:35 +0100 From: =?ISO-8859-1?Q?Xu=E2n_Baldauf?= MIME-Version: 1.0 To: marcel@holtmann.org, maxk@qualcomm.com CC: bluez-devel@lists.sourceforge.net Subject: [patch] Broadcom BCM2045 SCO workaround Content-Type: multipart/mixed; boundary="------------040401040602000004010801" List-ID: This is a multi-part message in MIME format. --------------040401040602000004010801 Content-Type: multipart/alternative; boundary="------------090208060600070806030608" --------------090208060600070806030608 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Hello, The Broadcom BCM2045 chipset seems to be also one of those chipsets which report the SCO maximum packet incorrectly. The attached patch works around this problem. With this workaround, a bluetooth USB dongle with this chipset is able to send SCO data correctly. The fix was verified using this USB dongle (MSI StarKey 2.0 (Ver 222-BW)) Bus 002 Device 004: ID 0a5c:2101 Broadcom Corp. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 224 Wireless bDeviceSubClass 1 Radio Frequency bDeviceProtocol 1 Bluetooth bMaxPacketSize0 64 idVendor 0x0a5c Broadcom Corp. idProduct 0x2101 bcdDevice 0.00 iManufacturer 1 Broadcom Corp iProduct 2 BCM92045DG Non-UHE iSerial 0 bNumConfigurations 1 and a Plantronics Explorer 320: Device Name: 320 Plantronics LMP Version: 1.2 (0x2) LMP Subversion: 0x8d1 Manufacturer: Cambridge Silicon Radio (10) Features: 0xbc 0xe8 0x01 0x00 0x08 0x08 0x00 0x00 Hello,

The Broadcom BCM2045 chipset seems to be also one of those chipsets which report the SCO maximum packet incorrectly. The attached patch works around this problem. With this workaround, a bluetooth USB dongle with this chipset is able to send SCO data correctly.

The fix was verified using this USB dongle (MSI StarKey 2.0 (Ver 222-BW))
Bus 002 Device 004: ID 0a5c:2101 Broadcom Corp.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          224 Wireless
  bDeviceSubClass         1 Radio Frequency
  bDeviceProtocol         1 Bluetooth
  bMaxPacketSize0        64
  idVendor           0x0a5c Broadcom Corp.
  idProduct          0x2101
  bcdDevice            0.00
  iManufacturer           1 Broadcom Corp
  iProduct                2 BCM92045DG Non-UHE
  iSerial                 0
  bNumConfigurations      1
and a Plantronics Explorer 320:
        Device Name: 320 Plantronics
        LMP Version: 1.2 (0x2) LMP Subversion: 0x8d1
        Manufacturer: Cambridge Silicon Radio (10)
        Features: 0xbc 0xe8 0x01 0x00 0x08 0x08 0x00 0x00
                <encryption> <slot offset> <timing accuracy> <role switch>
                <sniff mode> <SCO link> <HV3 packets> <u-law log> <A-law log>
                <CVSD> <AFH cap. slave> <AFH cap. master


ciao,
Xuân.

P.S.: Maybe it is possible to leave out the "HCI_RESET" part of the .driver_info field.






--------------090208060600070806030608--

--------------040401040602000004010801
Content-Type: text/x-patch;
 name="fix.BCM92045DG.SCOsendProblem.patch"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline;
 filename="fix.BCM92045DG.SCOsendProblem.patch"

Signed-off-by: Xuân Baldauf 
--- drivers/bluetooth/hci_usb.c.orig.0	2006-10-21 16:53:17.000000000 +0200
+++ drivers/bluetooth/hci_usb.c	2006-11-04 02:35:48.000000000 +0100
@@ -115,6 +115,9 @@
 	{ USB_DEVICE(0x0a5c, 0x200a), .driver_info = HCI_RESET | HCI_WRONG_SCO_MTU },
 	{ USB_DEVICE(0x0a5c, 0x2009), .driver_info = HCI_BCM92035 },
 
+	/* Broadcom BCM2045 */
+	{ USB_DEVICE(0x0a5c, 0x2101), .driver_info = HCI_RESET | HCI_WRONG_SCO_MTU },
+	
 	/* IBM/Lenovo ThinkPad with Broadcom chip */
 	{ USB_DEVICE(0x0a5c, 0x201e), .driver_info = HCI_WRONG_SCO_MTU },
 

--------------040401040602000004010801--