|
@@ -3068,6 +3068,12 @@ static int btusb_probe(struct usb_interface *intf,
|
|
|
if (id->driver_info & BTUSB_QCA_ROME) {
|
|
|
data->setup_on_usb = btusb_setup_qca;
|
|
|
hdev->set_bdaddr = btusb_set_bdaddr_ath3012;
|
|
|
+
|
|
|
+ /* QCA Rome devices lose their updated firmware over suspend,
|
|
|
+ * but the USB hub doesn't notice any status change.
|
|
|
+ * Explicitly request a device reset on resume.
|
|
|
+ */
|
|
|
+ set_bit(BTUSB_RESET_RESUME, &data->flags);
|
|
|
}
|
|
|
|
|
|
#ifdef CONFIG_BT_HCIBTUSB_RTL
|