Re: hciconfig hci0 reset bug

"Dave Young" <[email protected]>
Newsgroups gmane.linux.bluez.user
Message-ID <[email protected]>
On Mon, Mar 17, 2008 at 8:28 PM, Odysseus Flappington
<[email protected]> wrote:
> Hi Dave,
>
> So I got around to recompiling my kernel this weekend, and ran off a test on
> the patch attached and it worked like a charm.
>
> I have to wonder though why the line was commented out in the first place.
> Could it be because internal adapters don't need the line?
>
> Anyway, I'd love to see this fixed in future kernels. If there's anything
> else I can do to help test, let me know. Now that I've got my head around
> recompiling kernels again, I can probably turn around tests a lot faster.

Hi thanks

About the reset issue, I get some response from marcel about reset csr dongles
-------- Marcel said :
this is a clear NAK since you gonna break all old CSR based dongles.
Within the Bluetooth 1.0b and 1.1 specification there was an issues
with if HCI_Reset should only reset the Bluetooth internals or also
the transport. So issuing HCI_Reset on an old dongle will cause an USB
reset.

The solution is to find the build id when CSR produced correct
firmware and set the HCI_RESET quirk based on that. I meant to do this
for a long time, but so far never got around to inquiry the correct
build id where this got fixed.
--------

But I think it's hard to find that build id, so ...

Regards
dave

>
> Many thanks,
>
>
> Alex
>
> On 03/03/2008, Odysseus Flappington <[email protected]> wrote:
> > Ok,
> >
> > I passed reset=1 to hci_usb by adding the following line to
> > /etc/modprobe.d/options:
> >
> > options hci_usb reset=1
> >
> > and that's fixed the problem!
> >
> > Wasn't sure about my lsusb output, didn't seem to show very much, so
> > here's my lsusb -v output for my bluetooth device:
> >
> > Bus 001 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd
> > Bluetooth Dongle (HCI mode)
> > Device Descriptor:
> >   bLength                18
> >   bDescriptorType         1
> >   bcdUSB               2.00
> >   bDeviceClass          224 Wireless
> >   bDeviceSubClass         1 Radio Frequency
> >   bDeviceProtocol         1 Bluetooth
> >   bMaxPacketSize0        64
> >   idVendor           0x0a12 Cambridge Silicon Radio, Ltd
> >   idProduct          0x0001 Bluetooth Dongle (HCI mode)
> >   bcdDevice           31.64
> >   iManufacturer           0
> >   iProduct                0
> >   iSerial                 0
> >   bNumConfigurations      1
> >   Configuration Descriptor:
> >     bLength                 9
> >     bDescriptorType         2
> >     wTotalLength          177
> >     bNumInterfaces          2
> >     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     0x02  EP 2 OUT
> >         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     0x82  EP 2 IN
> >         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     0x03  EP 3 OUT
> >         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     0x83  EP 3 IN
> >         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     0x03  EP 3 OUT
> >         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     0x83  EP 3 IN
> >         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     0x03  EP 3 OUT
> >         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     0x83  EP 3 IN
> >         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     0x03  EP 3 OUT
> >         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     0x83  EP 3 IN
> >         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     0x03  EP 3 OUT
> >         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     0x83  EP 3 IN
> >         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     0x03  EP 3 OUT
> >         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     0x83  EP 3 IN
> >         bmAttributes            1
> >           Transfer Type            Isochronous
> >           Synch Type               None
> >           Usage Type               Data
> >         wMaxPacketSize     0x0031  1x 49 bytes
> >         bInterval               1
> > Device Status:     0x0001
> >   Self Powered
> >
> > Thanks,
> > Alex
> >
> >
> >
> >
> > On 03/03/2008, Odysseus Flappington <[email protected]> wrote:
> > > Hi Dave,
> > >
> > >  Thanks for the help. I can probably get a recompile of my kernel done
> > >  by the end of the weekend, maybe end of week, if it'll help.
> > >
> > >  In the meantime, I'll try loading the bluetooth module with reset=1
> > >  and get the lsusb output to you tonight when I get home from work.
> > >
> > >  Thanks,
> > >  Alex (Jackflap)
> > >
> > >
> > >  On 03/03/2008, Dave Young <[email protected]> wrote:
> > >  > On Mon, Mar 3, 2008 at 9:21 AM, Dave Young
> <[email protected]> wrote:
> > >  >  > On Fri, Feb 29, 2008 at 6:51 AM, Odysseus Flappington
> > >  >  >  <[email protected]> wrote:
> > >  >  >
> > >  >  >
> > >  >  > > So, it turns out that in order for any external usb bluetooth
> adapters
> > >  >  >  >  to re-connect to paired input devices on reboot, you need to
> issue an
> > >  >  >  >  'hciconfig hci0 reset' command after rebooting in order to
> reconnect.
> > >  >  >  >
> > >  >  >  >  More info can be found in bug #133690 on Launchpad
> > >  >  >  >
> (https://bugs.launchpad.net/ubuntu/+source/bluez-utils/+bug/133690).
> > >  >  >  >
> > >  >  >  >  This bug isn't Ubuntu-specific since I have reproduced in
> Fedora 8, so
> > >  >  >  >  I'm posting here.
> > >  >  >  >
> > >  >  >  >  Simply adding 'hciconfig hci0 reset' in /etc/default/bluetooth
> in
> > >  >  >  >  source would solve this bug. Is this a reasonable solution?
> > >  >  >  >
> > >  >  >  >  What is required in order to get a fix implemented?
> > >  >
> > >  >
> > >  > Sorry for previous blank reply.
> > >  >
> > >  >  For your problem, if you don't want to patch kernel you can also try
> > >  >  load the bluetooth module with parameter "reset=1"
> > >  >
> > >  >  Could you send the lsusb output?
> > >  >
> > >  >  Regards
> > >  >
> > >  > dave
> > >  >
> > >  >
> > >  >
> -------------------------------------------------------------------------
> > >  >  This SF.net email is sponsored by: Microsoft
> > >  >  Defy all challenges. Microsoft(R) Visual Studio 2008.
> > >  >  http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> > >  >  _______________________________________________
> > >  >  Bluez-users mailing list
> > >  >  [email protected]
> > >  >  https://lists.sourceforge.net/lists/listinfo/bluez-users
> > >  >
> > >
> >
>
>

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.