lkml.org 
[lkml]   [2011]   [Dec]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [bluetooth] linux-3.x regression (bisected)
From
Hi Rene,

On Thu, Dec 22, 2011 at 8:18 PM, Rene Herman <rene.herman@gmail.com> wrote:
> Good day.
>
> A while ago, my noname USB Bluetooth adapter stopped working, with from that
> point on only "Bluetooth: hci0 command tx timeout" appearing in the kernel
> messages.
>
> I just now got around to looking at it and bisected this to commit
> eead27da60df80a112d1ac3ea482226e9794c26b:
>
> ===
> Author: Andre Guedes <andre.guedes@openbossa.org>
> Date:   Thu Jun 30 19:20:55 2011 -0300
>
>    Bluetooth: Add lmp_host_le_capable() macro
>
>    Since we have the extended LMP features properly implemented, we
>    should check the LMP_HOST_LE bit to know if the host supports LE.
>
>    Signed-off-by: Andre Guedes <andre.guedes@openbossa.org>
>    Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
> ===
>
> while that commit cannot be reverted outright due to dependencies, reverting
> it functionally fixes things for me. That is, Bluetooth works again after
> applying (to linux-3.1.6):
>
> ===
> diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
> index 56943ad..c7f794e 100644
> --- a/net/bluetooth/hci_core.c
> +++ b/net/bluetooth/hci_core.c
> @@ -540,7 +540,7 @@ int hci_dev_open(__u16 dev)
>                ret = __hci_request(hdev, hci_init_req, 0,
>
> msecs_to_jiffies(HCI_INIT_TIMEOUT));
>
> -               if (lmp_host_le_capable(hdev))
> +               if (lmp_le_capable(hdev))
>                        ret = __hci_request(hdev, hci_le_init_req, 0,
>
> msecs_to_jiffies(HCI_INIT_TIMEOUT));
> ===
>
> It seems that my adapter wasn't ready for the change. It is a:
>
> 002 Device 002: ID 1131:1004 Integrated System Solution Corp. Bluetooth
> Device
>
> If more specific information is wanted (to add adapter-specific quirk
> handling, perhaps?) please be verbose on how to obtain it. I don't know
> anything about Bluetooth

Could you please send us the kernel log messages with Bluetooth debug
enabled? Here goes the instructions:

1. Compile kernel with CONFIG_DYNAMIC_DEBUG=y.
2. Load Bluetooth module.
3. Run the following commands to turn debug on (remember to mount debugfs
first):
--
$ echo "file hci_core.c +pf" > /sys/kernel/debug/dynamic_debug/control
$ echo "file hci_event.c +pf" > /sys/kernel/debug/dynamic_debug/control
$ echo "file mgmt.c +pf" > /sys/kernel/debug/dynamic_debug/control
$ echo "file btusb.c +pf" > /sys/kernel/debug/dynamic_debug/control
--
4. Plug the Bluetooth adapter.

Thanks in advance,

Andre
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2011-12-27 18:25    [W:0.094 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site