[bluetooth] linux-3.x regression (bisected)
From: Rene Herman
Date: Thu Dec 22 2011 - 18:42:03 EST
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@xxxxxxxxxxxxx>
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@xxxxxxxxxxxxx>
Signed-off-by: Gustavo F. Padovan <padovan@xxxxxxxxxxxxxx>
===
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
Rene.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/