From: "Odysseus Flappington" <deriziotis@gmail.com>
To: marcel@holtmann.org
Cc: "Dave Young" <hidave.darkstar@gmail.com>,
"BlueZ users" <bluez-users@lists.sourceforge.net>
Subject: Re: [Bluez-users] hciconfig hci0 reset bug
Date: Thu, 20 Mar 2008 17:19:22 +0000 [thread overview]
Message-ID: <5eee8c670803201019q4703c779wbb597b806cf4d7c@mail.gmail.com> (raw)
In-Reply-To: <a8e1da0803180014u262a7ee0h25ff58a0e6363dfd@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 16644 bytes --]
Hi Marcel, Dave,
I've been looking around to see if I could figure out the build id where the
dongles started shipping with the correct HCI_Reset. I think I may have
found something.
http://www.csr.com/ contains the docs regarding the release of the CSR
firmware and the specs that each adhere's to. Looking at the following HCI
overall Implementation doc, I think we can find the relevant build id:
https://www.csrsupport.com/document.php?did=141
Firstly, i found confirmation that the problem has been solved in
HCIStack1.1v12.x:
"In builds before HCIStack1.1v12.x, the HCI Reset command rebooted the
BlueCore device. This implied the host
transport was reset. This was a consequence of the way the firmware team
understood an early version of the
Bluetooth specification (probably 0.7).
Rebooting the BlueCore device is incorrect behaviour. Version 1.1 [BT] now
makes it clear that the Reset
command must reinitialise radio, LC, LM and HCI state, but leave the host
transport in place. Builds since
HCIStack1.1v12.x obey [BT]."
So this should be fixed in HCIStack1.1v12.x, the doc outlines the build ids
for each version of of the stack, here is the build id for HCIStack1.1v12.1:
BuildID (hex) BuildID (decimal) Build Name
0x0077 119 HCIStack1.1v12.1
So, if I'm reading this correctly, you should issue the reset for all
CSR-based dongles with build id > 118.
Am I on the right track here? Does this information look accurate to you
guys?
If there's anything else I can to do re this issue, please let feel free to
ask me.
Many thanks,
Alex (Jackflap)
On 18/03/2008, Dave Young <hidave.darkstar@gmail.com> wrote:
>
> On Mon, Mar 17, 2008 at 8:28 PM, Odysseus Flappington
>
> <deriziotis@gmail.com> 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 <deriziotis@gmail.com> 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 <deriziotis@gmail.com> 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 <hidave.darkstar@gmail.com> wrote:
> > > > > On Mon, Mar 3, 2008 at 9:21 AM, Dave Young
> > <hidave.darkstar@gmail.com> wrote:
> > > > > > On Fri, Feb 29, 2008 at 6:51 AM, Odysseus Flappington
> > > > > > <deriziotis@gmail.com> 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
> > > > > Bluez-users@lists.sourceforge.net
> > > > > https://lists.sourceforge.net/lists/listinfo/bluez-users
> > > > >
> > > >
> > >
> >
> >
>
[-- Attachment #2: Type: text/html, Size: 42730 bytes --]
next prev parent reply other threads:[~2008-03-20 17:19 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-28 22:51 [Bluez-users] hciconfig hci0 reset bug Odysseus Flappington
2008-03-03 1:21 ` Dave Young
2008-03-03 1:24 ` Dave Young
2008-03-03 11:35 ` Odysseus Flappington
2008-03-03 22:19 ` Odysseus Flappington
2008-03-17 12:28 ` Odysseus Flappington
2008-03-18 7:14 ` Dave Young
2008-03-20 17:19 ` Odysseus Flappington [this message]
2008-03-22 0:29 ` Dave Young
2008-03-26 16:22 ` Marcel Holtmann
2008-04-04 8:58 ` Odysseus Flappington
2008-07-21 20:53 ` Odysseus Flappington
2008-07-22 5:02 ` Dave Young
2008-03-26 12:50 ` Peter Stephenson
2008-03-26 16:24 ` Marcel Holtmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5eee8c670803201019q4703c779wbb597b806cf4d7c@mail.gmail.com \
--to=deriziotis@gmail.com \
--cc=bluez-users@lists.sourceforge.net \
--cc=hidave.darkstar@gmail.com \
--cc=marcel@holtmann.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox