summaryrefslogtreecommitdiff
path: root/drivers/bluetooth/btsdio.c
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2013-12-23 06:52:32 -0800
committerJohan Hedberg <johan.hedberg@intel.com>2013-12-23 18:49:35 +0200
commitde8b582893b9eaa098e7efb385a484819657920b (patch)
treea0f4256a3ab73028f36431f1cf06648c5e79c9b3 /drivers/bluetooth/btsdio.c
parentc567c77101f082d1a97582e7606877b9e7e4d7d0 (diff)
downloadlinux-de8b582893b9eaa098e7efb385a484819657920b.tar.gz
Bluetooth: Set HCI_QUIRK_RESET_ON_CLOSE for Socket SDIO cards
The Socket Bluetooth SDIO cards are branded versions of Toshiba SD-BT2 and they do not support sending HCI_Reset as first command. To make this card work the HCI_QUIRK_RESET_ON_CLOSE quirk needs to be set before registering the controller. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'drivers/bluetooth/btsdio.c')
-rw-r--r--drivers/bluetooth/btsdio.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/bluetooth/btsdio.c b/drivers/bluetooth/btsdio.c
index b61440aaee65..1f6815825e61 100644
--- a/drivers/bluetooth/btsdio.c
+++ b/drivers/bluetooth/btsdio.c
@@ -333,6 +333,9 @@ static int btsdio_probe(struct sdio_func *func,
hdev->flush = btsdio_flush;
hdev->send = btsdio_send_frame;
+ if (func->vendor == 0x0104 && func->device == 0x00c5)
+ set_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks);
+
err = hci_register_dev(hdev);
if (err < 0) {
hci_free_dev(hdev);