summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Holtmann2014-01-10 11:07:24 +0100
committerJohan Hedberg2014-02-13 08:51:32 +0100
commita6d0d690e1bd56ce031f38a3144cb9f6ea23456f (patch)
tree680e523226acf9750e2e550f487b5d50b7b2dc82
parentBluetooth: Add management command for enabling Secure Connections (diff)
downloadkernel-qcow2-linux-a6d0d690e1bd56ce031f38a3144cb9f6ea23456f.tar.gz
kernel-qcow2-linux-a6d0d690e1bd56ce031f38a3144cb9f6ea23456f.tar.xz
kernel-qcow2-linux-a6d0d690e1bd56ce031f38a3144cb9f6ea23456f.zip
Bluetooth: Enable Secure Connection during power on if configured
If support for Secure Connection has been configured, then make sure to send the appropiate HCI command to enable it when powering on the controller. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
-rw-r--r--net/bluetooth/hci_core.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
index 52e398f37129..b3b619a448b5 100644
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
@@ -1363,6 +1363,14 @@ static void hci_init4_req(struct hci_request *req, unsigned long opt)
/* Check for Synchronization Train support */
if (lmp_sync_train_capable(hdev))
hci_req_add(req, HCI_OP_READ_SYNC_TRAIN_PARAMS, 0, NULL);
+
+ /* Enable Secure Connections if supported and configured */
+ if (lmp_sc_capable(hdev) &&
+ test_bit(HCI_SC_ENABLED, &hdev->dev_flags)) {
+ u8 support = 0x01;
+ hci_req_add(req, HCI_OP_WRITE_SC_SUPPORT,
+ sizeof(support), &support);
+ }
}
static int __hci_init(struct hci_dev *hdev)