The following Qualcomm WCN399x Bluetooth controllers support the
Microsoft vendor extension and they are using 0xFD70 for VsMsftOpCode.
-WCN3990
-WCN3991
-WCN3998

< HCI Command: ogf 0x3f, ocf 0x0170, plen 1
  00
> HCI Event: 0x0e plen 18
  01 70 FD 00 00 1F 00 00 00 00 00 00 00 04 4D 53 46 54

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

Signed-off-by: Miao-chen Chou <mcc...@chromium.org>
Reviewed-by: Abhishek Pandit-Subedi <abhishekpan...@chromium.org>
Reviewed-by: Archie Pusaka <apus...@chromium.org>
---

 drivers/bluetooth/btqca.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/bluetooth/btqca.c b/drivers/bluetooth/btqca.c
index f85a55add9be5..ab19963c83616 100644
--- a/drivers/bluetooth/btqca.c
+++ b/drivers/bluetooth/btqca.c
@@ -517,6 +517,19 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate,
                        return err;
        }
 
+       /* WCN399x supports the Microsoft vendor extension with 0xFD70 as the
+        * VsMsftOpCode.
+        */
+       switch (soc_type) {
+       case QCA_WCN3990:
+       case QCA_WCN3991:
+       case QCA_WCN3998:
+               hci_set_msft_opcode(hdev, 0xFD70);
+               break;
+       default:
+               break;
+       }
+
        /* Perform HCI reset */
        err = qca_send_reset(hdev);
        if (err < 0) {
-- 
2.29.2.684.gfbc64c5ab5-goog

Reply via email to