@@ -317,6 +317,11 @@ static const struct usb_device_id blacklist_table[] = {
317
317
BTUSB_WIDEBAND_SPEECH |
318
318
BTUSB_VALID_LE_STATES },
319
319
320
+ /* QCA WCN785x chipset */
321
+ { USB_DEVICE (0x0cf3 , 0xe700 ), .driver_info = BTUSB_QCA_WCN6855 |
322
+ BTUSB_WIDEBAND_SPEECH |
323
+ BTUSB_VALID_LE_STATES },
324
+
320
325
/* Broadcom BCM2035 */
321
326
{ USB_DEVICE (0x0a5c , 0x2009 ), .driver_info = BTUSB_BCM92035 },
322
327
{ USB_DEVICE (0x0a5c , 0x200a ), .driver_info = BTUSB_WRONG_SCO_MTU },
@@ -3037,6 +3042,7 @@ static const struct qca_device_info qca_devices_table[] = {
3037
3042
{ 0x00130100 , 40 , 4 , 16 }, /* WCN6855 1.0 */
3038
3043
{ 0x00130200 , 40 , 4 , 16 }, /* WCN6855 2.0 */
3039
3044
{ 0x00130201 , 40 , 4 , 16 }, /* WCN6855 2.1 */
3045
+ { 0x00190200 , 40 , 4 , 16 }, /* WCN785x 2.0 */
3040
3046
};
3041
3047
3042
3048
static int btusb_qca_send_vendor_req (struct usb_device * udev , u8 request ,
@@ -3327,11 +3333,11 @@ static int btusb_setup_qca(struct hci_dev *hdev)
3327
3333
if (err < 0 )
3328
3334
return err ;
3329
3335
3330
- /* WCN6855 2.1 will reset to apply firmware downloaded here, so
3336
+ /* WCN6855 2.1 and later will reset to apply firmware downloaded here, so
3331
3337
* wait ~100ms for reset Done then go ahead, otherwise, it maybe
3332
3338
* cause potential enable failure.
3333
3339
*/
3334
- if (info -> rom_version = = 0x00130201 )
3340
+ if (info -> rom_version > = 0x00130201 )
3335
3341
msleep (QCA_BT_RESET_WAIT_MS );
3336
3342
}
3337
3343
0 commit comments