This patch adds another Broadcom BCM2045 based device to the
blacklist, with these settings the micro dongle works on my system.
Signed-off-by: Karsten Keil <[email protected]>
---
drivers/bluetooth/hci_usb.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/drivers/bluetooth/hci_usb.c b/drivers/bluetooth/hci_usb.c
index 372c7ef..f16c94c 100644
--- a/drivers/bluetooth/hci_usb.c
+++ b/drivers/bluetooth/hci_usb.c
@@ -116,6 +116,7 @@ static struct usb_device_id blacklist_ids[] = {
{ USB_DEVICE(0x0a5c, 0x2009), .driver_info = HCI_BCM92035 },
/* Broadcom BCM2045 */
+ { USB_DEVICE(0x0a5c, 0x2039), .driver_info = HCI_RESET | HCI_WRONG_SCO_MTU },
{ USB_DEVICE(0x0a5c, 0x2101), .driver_info = HCI_RESET | HCI_WRONG_SCO_MTU },
/* IBM/Lenovo ThinkPad with Broadcom chip */
--
Karsten Keil
SuSE Labs
ISDN and VOIP development
SUSE LINUX Products GmbH, Maxfeldstr.5 90409 Nuernberg, GF: Markus Rex, HRB 16746 (AG Nuernberg)
Hi Karsten,
> This patch adds another Broadcom BCM2045 based device to the
> blacklist, with these settings the micro dongle works on my system.
>
> Signed-off-by: Karsten Keil <[email protected]>
> ---
> drivers/bluetooth/hci_usb.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/bluetooth/hci_usb.c b/drivers/bluetooth/hci_usb.c
> index 372c7ef..f16c94c 100644
> --- a/drivers/bluetooth/hci_usb.c
> +++ b/drivers/bluetooth/hci_usb.c
> @@ -116,6 +116,7 @@ static struct usb_device_id blacklist_ids[] = {
> { USB_DEVICE(0x0a5c, 0x2009), .driver_info = HCI_BCM92035 },
>
> /* Broadcom BCM2045 */
> + { USB_DEVICE(0x0a5c, 0x2039), .driver_info = HCI_RESET |
> HCI_WRONG_SCO_MTU },
> { USB_DEVICE(0x0a5c, 0x2101), .driver_info = HCI_RESET |
> HCI_WRONG_SCO_MTU },
before I sign off on this one, can you include the part from /proc/bus/
usb/devices for this dongle.
Regards
Marcel
On Fri, Mar 07, 2008 at 09:43:54PM +0100, Marcel Holtmann wrote:
> Hi Karsten,
>
> >This patch adds another Broadcom BCM2045 based device to the
> >blacklist, with these settings the micro dongle works on my system.
> >
> >Signed-off-by: Karsten Keil <[email protected]>
> >---
> >drivers/bluetooth/hci_usb.c | 1 +
> >1 files changed, 1 insertions(+), 0 deletions(-)
> >
> >diff --git a/drivers/bluetooth/hci_usb.c b/drivers/bluetooth/hci_usb.c
> >index 372c7ef..f16c94c 100644
> >--- a/drivers/bluetooth/hci_usb.c
> >+++ b/drivers/bluetooth/hci_usb.c
> >@@ -116,6 +116,7 @@ static struct usb_device_id blacklist_ids[] = {
> > { USB_DEVICE(0x0a5c, 0x2009), .driver_info = HCI_BCM92035 },
> >
> > /* Broadcom BCM2045 */
> >+ { USB_DEVICE(0x0a5c, 0x2039), .driver_info = HCI_RESET |
> >HCI_WRONG_SCO_MTU },
> > { USB_DEVICE(0x0a5c, 0x2101), .driver_info = HCI_RESET |
> >HCI_WRONG_SCO_MTU },
>
> before I sign off on this one, can you include the part from /proc/bus/
> usb/devices for this dongle.
>
I do not have /proc/bus/usb on this machine, but can give you the output of
lsusb -v
And it is this device:
http://cgi.ebay.de/USB-Bluetooth-Nano-Dongle-Micro-Adapter-Mini-V2-0-EDR_W0QQitemZ270217529196QQihZ017QQcategoryZ79469QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
It work fine with a BT mouse on my notebook with this patch.
Bus 003 Device 006: ID 0a5c:2039 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 0x2039
bcdDevice 1.00
iManufacturer 1 Broadcom Corp
iProduct 2 BCM92045B3 ROM
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 216
bNumInterfaces 4
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0000 1x 0 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0000 1x 0 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0009 1x 9 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0009 1x 9 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 2
bNumEndpoints 2
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0011 1x 17 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0011 1x 17 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 3
bNumEndpoints 2
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0019 1x 25 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0019 1x 25 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 4
bNumEndpoints 2
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0021 1x 33 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0021 1x 33 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 5
bNumEndpoints 2
bInterfaceClass 224 Wireless
bInterfaceSubClass 1 Radio Frequency
bInterfaceProtocol 1 Bluetooth
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0031 1x 49 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0031 1x 49 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0020 1x 32 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0020 1x 32 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 254 Application Specific Interface
bInterfaceSubClass 1 Device Firmware Update
bInterfaceProtocol 0
iInterface 0
Device Status: 0x0000
(Bus Powered)
Bus 003 Device 005: ID 0a5c:4500 Broadcom Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 0 Full speed (or root) hub
bMaxPacketSize0 8
idVendor 0x0a5c Broadcom Corp.
idProduct 0x4500
bcdDevice 1.00
iManufacturer 1 Broadcom
iProduct 2 BCM2045B2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 0 Full speed (or root) hub
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 255
Hub Descriptor:
bLength 9
bDescriptorType 41
nNbrPorts 3
wHubCharacteristic 0x0004
Ganged power switching
Compound device
Ganged overcurrent protection
bPwrOn2PwrGood 50 * 2 milli seconds
bHubContrCurrent 100 milli Ampere
DeviceRemovable 0x0e
PortPwrCtrlMask 0xff
Hub Port Status:
Port 1: 0000.0103 power enable connect
Port 2: 0000.0100 power
Port 3: 0000.0100 power
Device Status: 0x0000
(Bus Powered)
--
Karsten Keil
SuSE Labs
ISDN and VOIP development
SUSE LINUX Products GmbH, Maxfeldstr.5 90409 Nuernberg, GF: Markus Rex, HRB 16746 (AG Nuernberg)
Hi Karsten,
>>> This patch adds another Broadcom BCM2045 based device to the
>>> blacklist, with these settings the micro dongle works on my system.
>>>
>>> Signed-off-by: Karsten Keil <[email protected]>
>>> ---
>>> drivers/bluetooth/hci_usb.c | 1 +
>>> 1 files changed, 1 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/drivers/bluetooth/hci_usb.c b/drivers/bluetooth/
>>> hci_usb.c
>>> index 372c7ef..f16c94c 100644
>>> --- a/drivers/bluetooth/hci_usb.c
>>> +++ b/drivers/bluetooth/hci_usb.c
>>> @@ -116,6 +116,7 @@ static struct usb_device_id blacklist_ids[] = {
>>> { USB_DEVICE(0x0a5c, 0x2009), .driver_info = HCI_BCM92035 },
>>>
>>> /* Broadcom BCM2045 */
>>> + { USB_DEVICE(0x0a5c, 0x2039), .driver_info = HCI_RESET |
>>> HCI_WRONG_SCO_MTU },
>>> { USB_DEVICE(0x0a5c, 0x2101), .driver_info = HCI_RESET |
>>> HCI_WRONG_SCO_MTU },
>>
>> before I sign off on this one, can you include the part from /proc/
>> bus/
>> usb/devices for this dongle.
>>
>
> I do not have /proc/bus/usb on this machine, but can give you the
> output of
> lsusb -v
>
> And it is this device:
> http://cgi.ebay.de/USB-Bluetooth-Nano-Dongle-Micro-Adapter-Mini-V2-0-EDR_W0QQitemZ270217529196QQihZ017QQcategoryZ79469QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
>
> It work fine with a BT mouse on my notebook with this patch.
>
>
> Bus 003 Device 006: ID 0a5c:2039 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 0x2039
> bcdDevice 1.00
> iManufacturer 1 Broadcom Corp
> iProduct 2 BCM92045B3 ROM
looks good to me.
Acked-by: Marcel Holtmann <[email protected]>
Regards
Marcel