linux/drivers/bluetooth
Tedd Ho-Jeong An bfbd45e9ac Bluetooth: Add device shutdown routine for Intel Bluetooth device
This patch adds the device shutdown routine for Intel Bluetooth device.

Some platforms have BT LED issue with Intel Bluetooth device that BT LED goes
off 5 seconds after BT is turned off

For Intel Bluetooth device, the BT LED is turned off when:
- there is no active connection or radio activity
- USB is suspend

So, when the BT is turned off, it takes 5 seconds because USB suspend timeone
is 5 seconds by default. And if the USB suspend is not enabled, BT LED won't be
turned off.

To fix this issue, recently Intel Bluetooth firmware patch had been submitted
to turn off the BT LED immediately by the vendor specific command(0xFC3F). And
this patch sends this command to the device before closing the device.

For backward compatibility of this command  with old firmware, this command was
supported before, but it behaves same as HCI_RESET internally. So, it won't be
the problem even if the system doesn't have the latest firmware patch.

Signed-off-by: Tedd Ho-Jeong An <tedd.an@intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
2015-02-15 00:39:22 +01:00
..
ath3k.c Bluetooth: ath3k: workaround the compatibility issue with xHCI controller 2015-01-29 19:12:21 +01:00
bcm203x.c Bluetooth: Use devm_kzalloc in bcm203x.c file. 2012-08-06 15:03:00 -03:00
bfusb.c Bluetooth: bfusb: Set the HCI_QUIRK_BROKEN_LOCAL_COMMANDS quirk 2014-12-26 20:16:12 +02:00
bluecard_cs.c Bluetooth: Remove typedef bluecard_info_t 2014-08-14 08:49:25 +02:00
bpa10x.c Bluetooth: Declare bpa10x_table[] as const 2013-10-11 17:05:22 +02:00
bt3c_cs.c Bluetooth: Remove typedef bt3c_info_t 2014-08-14 08:49:26 +02:00
btmrvl_debugfs.c Bluetooth: btmrvl add firmware dump support 2014-12-03 17:35:51 +01:00
btmrvl_drv.h Bluetooth: btmrvl: support SCO routing to host interface 2015-02-14 05:19:58 +01:00
btmrvl_main.c Bluetooth: btmrvl: support SCO routing to host interface 2015-02-14 05:19:58 +01:00
btmrvl_sdio.c bluetooth: btmrvl: increase the priority of firmware download message 2015-01-06 16:19:36 +01:00
btmrvl_sdio.h Bluetooth: btmrvl add firmware dump support 2014-12-03 17:35:51 +01:00
btsdio.c Bluetooth: Use MD SET register for changing SDIO Type-B to Type-A 2013-12-29 21:31:07 +02:00
btuart_cs.c Bluetooth: Remove typedef btuart_info_t 2014-08-14 08:49:25 +02:00
btusb.c Bluetooth: Add device shutdown routine for Intel Bluetooth device 2015-02-15 00:39:22 +01:00
btwilink.c bluetooth: drop owner assignment from platform_drivers 2014-10-20 16:20:19 +02:00
dtl1_cs.c Bluetooth: Remove typedefs nsh_t and dtl1_info_t 2014-08-14 08:49:26 +02:00
hci_ath.c Bluetooth: hci-uart-ath: Correct the comments in this driver 2014-11-11 00:21:18 +01:00
hci_bcsp.c Bluetooth: Remove assignments in if-statements 2014-03-05 20:52:17 +02:00
hci_h4.c Bluetooth: Remove hci_h4 unused defines 2014-04-24 11:55:26 -03:00
hci_h5.c Bluetooth: Switch HCI H5 driver to use hci_reset_dev() function 2014-11-02 10:03:51 +02:00
hci_ldisc.c Bluetooth: Fix HCIUARTGETDEVICE ioctl when UART is not registered 2014-07-12 18:37:34 +03:00
hci_ll.c Bluetooth: Add hdev parameter to hdev->send driver callback 2013-10-11 15:28:03 +02:00
hci_uart.h Bluetooth: Add support for external configuration with UART driver 2014-07-11 13:59:50 +03:00
hci_vhci.c switch hci_vhci to ->write_iter() 2014-10-09 02:39:08 -04:00
Kconfig Bluetooth: btmrvl add firmware dump support 2014-12-03 17:35:51 +01:00
Makefile Bluetooth: Enable -D__CHECK_ENDIAN__ for sparse by default 2013-10-02 09:10:05 +03:00