linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Revert "Bluetooth: Enable autosuspend for Intel Bluetooth device"
@ 2014-04-22 21:04 Marcel Holtmann
  2014-04-23 17:27 ` Gustavo Padovan
  0 siblings, 1 reply; 2+ messages in thread
From: Marcel Holtmann @ 2014-04-22 21:04 UTC (permalink / raw)
  To: linux-bluetooth

This reverts commit d2bee8fb6e18f6116aada39851918473761f7ab1.

Enabling autosuspend for Intel Bluetooth devices has been shown to not
work reliable. It does work for some people with certain combinations
of USB host controllers, but for others it puts the device to sleep and
it will not wake up for any event.

These events can be important ones like HCI Inquiry Complete or HCI
Connection Request. The events will arrive as soon as you poke the
device with a new command, but that is not something we can do in
these cases.

Initially there were patches to the xHCI USB controller that fixed
this for some people, but not for all. This could be well a problem
somewhere in the USB subsystem or in the USB host controllers or
just plain a hardware issue somewhere. At this moment we just do
not know and the only safe action is to revert this patch.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Cc: Tedd Ho-Jeong An <tedd.an@intel.com>
Cc: stable@vger.kernel.org
---
 drivers/bluetooth/btusb.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index f338b0c5a8de..dc99eff2a4de 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -1485,10 +1485,8 @@ static int btusb_probe(struct usb_interface *intf,
 	if (id->driver_info & BTUSB_BCM92035)
 		hdev->setup = btusb_setup_bcm92035;
 
-	if (id->driver_info & BTUSB_INTEL) {
-		usb_enable_autosuspend(data->udev);
+	if (id->driver_info & BTUSB_INTEL)
 		hdev->setup = btusb_setup_intel;
-	}
 
 	/* Interface numbers are hardcoded in the specification */
 	data->isoc = usb_ifnum_to_if(data->udev, 1);
-- 
1.9.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] Revert "Bluetooth: Enable autosuspend for Intel Bluetooth device"
  2014-04-22 21:04 [PATCH] Revert "Bluetooth: Enable autosuspend for Intel Bluetooth device" Marcel Holtmann
@ 2014-04-23 17:27 ` Gustavo Padovan
  0 siblings, 0 replies; 2+ messages in thread
From: Gustavo Padovan @ 2014-04-23 17:27 UTC (permalink / raw)
  To: Marcel Holtmann; +Cc: linux-bluetooth

Hi Marcel,

2014-04-22 Marcel Holtmann <marcel@holtmann.org>:

> This reverts commit d2bee8fb6e18f6116aada39851918473761f7ab1.
> 
> Enabling autosuspend for Intel Bluetooth devices has been shown to not
> work reliable. It does work for some people with certain combinations
> of USB host controllers, but for others it puts the device to sleep and
> it will not wake up for any event.
> 
> These events can be important ones like HCI Inquiry Complete or HCI
> Connection Request. The events will arrive as soon as you poke the
> device with a new command, but that is not something we can do in
> these cases.
> 
> Initially there were patches to the xHCI USB controller that fixed
> this for some people, but not for all. This could be well a problem
> somewhere in the USB subsystem or in the USB host controllers or
> just plain a hardware issue somewhere. At this moment we just do
> not know and the only safe action is to revert this patch.
> 
> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
> Cc: Tedd Ho-Jeong An <tedd.an@intel.com>
> Cc: stable@vger.kernel.org
> ---
>  drivers/bluetooth/btusb.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)

Patch has been applied to bluetooth.git. Thanks.

	Gustavo

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-04-23 17:27 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-22 21:04 [PATCH] Revert "Bluetooth: Enable autosuspend for Intel Bluetooth device" Marcel Holtmann
2014-04-23 17:27 ` Gustavo Padovan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).