[PATCH 1/2][SRU][H/OEM-5.10] Bluetooth: btusb: Enable MSFT extension for Intel controllers

Koba Ko koba.ko at canonical.com
Thu Aug 26 06:03:21 UTC 2021


From: Miao-chen Chou <mcchou at chromium.org>

BugLink: https://bugs.launchpad.net/bugs/1941696

The Intel JeffersonPeak, HarrisonPeak and CyclonePeak Bluetooth
controllers support the Microsoft vendor extension and they are using
0xFC1E for VsMsftOpCode.

< HCI Command: Vendor (0x3f|0x001e) plen 1
        00
> HCI Event: Command Complete (0x0e) plen 15
      Vendor (0x3f|0x001e) ncmd 1
        Status: Success (0x00)
        00 3f 00 00 00 00 00 00 00 01 50

The following test step was performed.
- Boot the test devices with HarrisonPeak and verify INFO print in
dmesg.

Signed-off-by: Miao-chen Chou <mcchou at chromium.org>
Reviewed-by: Abhishek Pandit-Subedi <abhishekpandit at chromium.org>
Reviewed-by: Archie Pusaka <apusaka at chromium.org>
Signed-off-by: Marcel Holtmann <marcel at holtmann.org>
(cherry picked from commit 7a45bcb49a39b1aad9a18eb226ad4f86bdbd2119)
Signed-off-by: Koba Ko <koba.ko at canonical.com>
---
 drivers/bluetooth/btusb.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index 1ef116279625c..c890ceda9637c 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -2866,7 +2866,10 @@ static int btusb_setup_intel_new(struct hci_dev *hdev)
 	 * extension are using 0xFC1E for VsMsftOpCode.
 	 */
 	switch (ver.hw_variant) {
+	case 0x11:	/* JfP */
 	case 0x12:	/* ThP */
+	case 0x13:	/* HrP */
+	case 0x14:	/* CcP */
 		hci_set_msft_opcode(hdev, 0xFC1E);
 		break;
 	}
-- 
2.25.1




More information about the kernel-team mailing list