diff options
author | Miao-chen Chou <mcchou@chromium.org> | 2020-04-03 21:44:01 +0200 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2020-04-05 14:53:05 +0300 |
commit | 145373cb1b1fcdba2059e945d0aa2613af2e84d1 (patch) | |
tree | 1982f42894f36215b771810d37e85b8902d210e9 /net/bluetooth/hci_core.c | |
parent | 3d2336042ae3555d4b77995402291c5795882d20 (diff) | |
download | linux-145373cb1b1fcdba2059e945d0aa2613af2e84d1.tar.gz linux-145373cb1b1fcdba2059e945d0aa2613af2e84d1.tar.bz2 linux-145373cb1b1fcdba2059e945d0aa2613af2e84d1.zip |
Bluetooth: Add framework for Microsoft vendor extension
Micrsoft defined a set for HCI vendor extensions. Check the following
link for details:
https://docs.microsoft.com/en-us/windows-hardware/drivers/bluetooth/microsoft-defined-bluetooth-hci-commands-and-events
This provides the basic framework to enable the extension and read its
supported features. Drivers still have to declare support for this
extension before it can be utilized by the host stack.
Signed-off-by: Miao-chen Chou <mcchou@chromium.org>
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.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index 5fb9db0b2b7b..ef0ee3a3d9ed 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c @@ -44,6 +44,7 @@ #include "hci_debugfs.h" #include "smp.h" #include "leds.h" +#include "msft.h" static void hci_rx_work(struct work_struct *work); static void hci_cmd_work(struct work_struct *work); @@ -1563,6 +1564,8 @@ setup_failed: hci_dev_test_flag(hdev, HCI_VENDOR_DIAG) && hdev->set_diag) ret = hdev->set_diag(hdev, true); + msft_do_open(hdev); + clear_bit(HCI_INIT, &hdev->flags); if (!ret) { @@ -1758,6 +1761,8 @@ int hci_dev_do_close(struct hci_dev *hdev) hci_sock_dev_event(hdev, HCI_DEV_DOWN); + msft_do_close(hdev); + if (hdev->flush) hdev->flush(hdev); |