|
@@ -1088,6 +1088,10 @@ static int btusb_open(struct hci_dev *hdev)
|
|
|
}
|
|
|
|
|
|
data->intf->needs_remote_wakeup = 1;
|
|
|
+ /* device specific wakeup source enabled and required for USB
|
|
|
+ * remote wakeup while host is suspended
|
|
|
+ */
|
|
|
+ device_wakeup_enable(&data->udev->dev);
|
|
|
|
|
|
if (test_and_set_bit(BTUSB_INTR_RUNNING, &data->flags))
|
|
|
goto done;
|
|
@@ -1151,6 +1155,7 @@ static int btusb_close(struct hci_dev *hdev)
|
|
|
goto failed;
|
|
|
|
|
|
data->intf->needs_remote_wakeup = 0;
|
|
|
+ device_wakeup_disable(&data->udev->dev);
|
|
|
usb_autopm_put_interface(data->intf);
|
|
|
|
|
|
failed:
|