summaryrefslogtreecommitdiffstats
path: root/net/bluetooth/hci_core.c
diff options
context:
space:
mode:
authorMarcel Holtmann2014-07-06 13:43:20 +0200
committerJohan Hedberg2014-07-06 13:57:49 +0200
commitcc78b44ba2231d6a92707407cd199b2e05fe3528 (patch)
tree0a3ba5aed3385af4c6f4cdb2992acc2618fd635a /net/bluetooth/hci_core.c
parentBluetooth: Add support for Intel bootloader devices (diff)
downloadkernel-qcow2-linux-cc78b44ba2231d6a92707407cd199b2e05fe3528.tar.gz
kernel-qcow2-linux-cc78b44ba2231d6a92707407cd199b2e05fe3528.tar.xz
kernel-qcow2-linux-cc78b44ba2231d6a92707407cd199b2e05fe3528.zip
Bluetooth: Skip unconfigured init procedure for raw-only devices
When the driver sets HCI_QUIRK_RAW_DEVICE, the controller will be set as unconfigured. However running the unconfigured init procecure is not useful since raw-only devices are not allowed to change its configuration. This change skips the init procedure and just allows user channel operation for this device. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'net/bluetooth/hci_core.c')
-rw-r--r--net/bluetooth/hci_core.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index b1d423efa109..fc7abd3c012d 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -1813,6 +1813,9 @@ static int __hci_unconf_init(struct hci_dev *hdev)
{
int err;
+ if (test_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks))
+ return 0;
+
err = __hci_req_sync(hdev, hci_init0_req, 0, HCI_INIT_TIMEOUT);
if (err < 0)
return err;