diff mbox series

Bluetooth: btusb: Enable MSFT extension for TyphoonPeak, GarfieldPeak, and WCN6855 controllers

Message ID 20210727140425.1.I1ac63dde4853d7b38a018b20b3d6d3d539378df3@changeid (mailing list archive)
State New, archived
Headers show
Series Bluetooth: btusb: Enable MSFT extension for TyphoonPeak, GarfieldPeak, and WCN6855 controllers | expand

Commit Message

Michael Sun July 27, 2021, 9:04 p.m. UTC
From: Chethan T N <chethan.tumkur.narayan@intel.com>

The Intel TyphoonPeak, GarfieldPeak and Qualcomm WCN6855 Bluetooth
controllers support the Microsoft vendor extension, enable them by
setting VsMsftOpCode accordingly.

Signed-off-by: Chethan T N <chethan.tumkur.narayan@intel.com>
Signed-off-by: Michael Sun <michaelfsun@google.com>
---

 drivers/bluetooth/btusb.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

bluez.test.bot@gmail.com July 27, 2021, 10:08 p.m. UTC | #1
This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=522277

---Test result---

Test Summary:
CheckPatch                    PASS      0.53 seconds
GitLint                       FAIL      0.12 seconds
BuildKernel                   PASS      618.33 seconds
TestRunner: Setup             PASS      402.30 seconds
TestRunner: l2cap-tester      PASS      2.97 seconds
TestRunner: bnep-tester       PASS      2.14 seconds
TestRunner: mgmt-tester       PASS      32.13 seconds
TestRunner: rfcomm-tester     PASS      2.40 seconds
TestRunner: sco-tester        PASS      2.27 seconds
TestRunner: smp-tester        FAIL      2.36 seconds
TestRunner: userchan-tester   PASS      2.17 seconds

Details
##############################
Test: CheckPatch - PASS - 0.53 seconds
Run checkpatch.pl script with rule in .checkpatch.conf


##############################
Test: GitLint - FAIL - 0.12 seconds
Run gitlint with rule in .gitlint
Bluetooth: btusb: Enable MSFT extension for TyphoonPeak, GarfieldPeak, and WCN6855 controllers
1: T1 Title exceeds max length (94>72): "Bluetooth: btusb: Enable MSFT extension for TyphoonPeak, GarfieldPeak, and WCN6855 controllers"


##############################
Test: BuildKernel - PASS - 618.33 seconds
Build Kernel with minimal configuration supports Bluetooth


##############################
Test: TestRunner: Setup - PASS - 402.30 seconds
Setup environment for running Test Runner


##############################
Test: TestRunner: l2cap-tester - PASS - 2.97 seconds
Run test-runner with l2cap-tester
Total: 40, Passed: 40 (100.0%), Failed: 0, Not Run: 0

##############################
Test: TestRunner: bnep-tester - PASS - 2.14 seconds
Run test-runner with bnep-tester
Total: 1, Passed: 1 (100.0%), Failed: 0, Not Run: 0

##############################
Test: TestRunner: mgmt-tester - PASS - 32.13 seconds
Run test-runner with mgmt-tester
Total: 448, Passed: 445 (99.3%), Failed: 0, Not Run: 3

##############################
Test: TestRunner: rfcomm-tester - PASS - 2.40 seconds
Run test-runner with rfcomm-tester
Total: 9, Passed: 9 (100.0%), Failed: 0, Not Run: 0

##############################
Test: TestRunner: sco-tester - PASS - 2.27 seconds
Run test-runner with sco-tester
Total: 8, Passed: 8 (100.0%), Failed: 0, Not Run: 0

##############################
Test: TestRunner: smp-tester - FAIL - 2.36 seconds
Run test-runner with smp-tester
Total: 8, Passed: 7 (87.5%), Failed: 1, Not Run: 0

Failed Test Cases
SMP Client - SC Request 2                            Failed       0.025 seconds

##############################
Test: TestRunner: userchan-tester - PASS - 2.17 seconds
Run test-runner with userchan-tester
Total: 3, Passed: 3 (100.0%), Failed: 0, Not Run: 0



---
Regards,
Linux Bluetooth
Marcel Holtmann July 29, 2021, 11:41 a.m. UTC | #2
Hi Michael,

> The Intel TyphoonPeak, GarfieldPeak and Qualcomm WCN6855 Bluetooth
> controllers support the Microsoft vendor extension, enable them by
> setting VsMsftOpCode accordingly.

please send two patches, one that enables Intel hardware and another one for Qualcomm chips. I am not a big fan of intermixing vendor specific parts in the same patch if not absolutely needed.

Regards

Marcel
diff mbox series

Patch

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index 5f8d9b1628af..b68511b7e07a 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -3016,6 +3016,17 @@  static int btusb_setup_intel_newgen(struct hci_dev *hdev)
 	btintel_version_info_tlv(hdev, &version);
 
 finish:
+	/* All Intel new genration controllers support the Microsoft vendor
+	 * extension are using 0xFC1E for VsMsftOpCode.
+	 */
+	switch (INTEL_HW_VARIANT(version.cnvi_bt)) {
+	case 0x17:
+	case 0x18:
+	case 0x19:
+		hci_set_msft_opcode(hdev, 0xFC1E);
+		break;
+	}
+
 	/* Set the event mask for Intel specific vendor events. This enables
 	 * a few extra events that are useful during general operation. It
 	 * does not enable any debugging related events.
@@ -4710,6 +4721,7 @@  static int btusb_probe(struct usb_interface *intf,
 		hdev->set_bdaddr = btusb_set_bdaddr_wcn6855;
 		hdev->cmd_timeout = btusb_qca_cmd_timeout;
 		set_bit(HCI_QUIRK_SIMULTANEOUS_DISCOVERY, &hdev->quirks);
+		hci_set_msft_opcode(hdev, 0xFD70);
 	}
 
 	if (id->driver_info & BTUSB_AMP) {