Hello list, I'm trying to pair Bluetooth USB dongle and Bluetooth headset and facing a trouble. Detail of devices are described below. The problems happens on kernel 2.6.39, while on kernel 2.6.26 it works fine. I know that after 2.6.26 bluetooth driver in kernel source tree changed, especially hci_usb changed to btusb. To let my USB dongle work on 2.6.39, what should I do? I'll dig into source code if it is necessary, but I don't know where is the good place to start. Does anybody have idea? Suggestions, hints are also welcome. I already enabled dynamic debug facility in kernel, and set +p to some files. echo -n 'file hci_core.c +p' > /sys/kernel/debug/dynamic_debug/control echo -n 'file hci_event.c +p' > /sys/kernel/debug/dynamic_debug/control echo -n 'file hci_conn.c +p' > /sys/kernel/debug/dynamic_debug/control echo -n 'file l2cap.c +p' > /sys/kernel/debug/dynamic_debug/control echo -n 'file hci_sock.c +p' > /sys/kernel/debug/dynamic_debug/control echo -n 'file af_bluetooth.c +p' > /sys/kernel/debug/dynamic_debug/control Followings are information related to the USB dongle. $ modinfo btusb filename: /lib/modules/2.6.39/kernel/drivers/bluetooth/btusb.ko license: GPL version: 0.6 description: Generic Bluetooth USB driver ver 0.6 author: Marcel Holtmann <marcel@xxxxxxxxxxxx> srcversion: 7BA5480215E4B8ADB9DFB5B alias: usb:v0C10p0000d*dc*dsc*dp*ic*isc*ip* (snip) $ hciconfig -a hci0: Type: BR/EDR Bus: USB BD Address: 2C:3D:4F:04:08:5F ACL MTU: 339:6 SCO MTU: 180:1 UP RUNNING RX bytes:457 acl:0 sco:0 events:18 errors:0 TX bytes:81 acl:0 sco:0 commands:17 errors:0 Features: 0xef 0x3e 0x09 0x70 0x08 0x08 0x00 0x80 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH HOLD SNIFF Link mode: SLAVE ACCEPT Name: 'Accel-OB1' Class: 0x240404 Service Classes: Rendering, Audio Device Class: Audio/Video, Device conforms to the Headset profile HCI Version: 1.2 (0x2) Revision: 0x2 LMP Version: 1.2 (0x2) Subversion: 0x2 Manufacturer: Accel Semiconductor Ltd. (74) $ lsusb -d 0c10:0000 Bus 006 Device 005: ID 0c10:0000 I also tried: # lsusb -v -d 0c10:0000 and the result is attached as lsusb-v.txt. # hcitool scan Scanning ... 00:1A:7D:60:4A:AA MM-BTSH24 # hcitool info 00:1A:7D:60:4A:AA Requesting information ... BD Address: 00:1A:7D:60:4A:AA Device Name: MM-BTSH24 Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 It shows failure to get Supproted features. During that, hcidump (snip) < HCI Command: Remote Name Request (0x01|0x0019) plen 10 bdaddr 00:1A:7D:60:4A:AA mode 2 clkoffset 0x0000 > HCI Event: Command Status (0x0f) plen 4 Remote Name Request (0x01|0x0019) status 0x00 ncmd 1 > HCI Event: Remote Name Req Complete (0x07) plen 255 status 0x00 bdaddr 00:1A:7D:60:4A:AA name 'MM-BTSH24' < HCI Command: Read Remote Version Information (0x01|0x001d) plen 2 handle 0 > HCI Event: Command Status (0x0f) plen 4 Read Remote Version Information (0x01|0x001d) status 0x0c ncmd 1 Error: Command Disallowed < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2 handle 0 > HCI Event: Command Status (0x0f) plen 4 Read Remote Supported Features (0x01|0x001b) status 0x0c ncmd 1 Error: Command Disallowed < HCI Command: Disconnect (0x01|0x0006) plen 3 handle 0 reason 0x13 Reason: Remote User Terminated Connection > HCI Event: Command Status (0x0f) plen 4 Disconnect (0x01|0x0006) status 0x0c ncmd 1 Error: Command Disallowed Got remote name, but couldn't get remote version with errors "Command Disallowed." thanks in advance, -- Takeshi Hamasaki
Bus 006 Device 005: ID 0c10:0000 Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 224 Wireless bDeviceSubClass 1 Radio Frequency bDeviceProtocol 1 Bluetooth bMaxPacketSize0 64 idVendor 0x0c10 idProduct 0x0000 bcdDevice 19.15 iManufacturer 0 iProduct 0 iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 193 bNumInterfaces 3 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 0mA 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 0 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 0 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 0x0020 1x 32 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 0x0020 1x 32 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 0 bInterfaceClass 254 Application Specific Interface bInterfaceSubClass 1 Device Firmware Update bInterfaceProtocol 0 iInterface 0 Device Firmware Upgrade Interface Descriptor: bLength 7 bDescriptorType 33 bmAttributes 7 Will Not Detach Manifestation Tolerant Upload Supported Download Supported wDetachTimeout 5000 milliseconds wTransferSize 1023 bytes Device Status: 0x0000 (Bus Powered)