UPSTREAM: usbcore: enable USB2 LPM if port suspend fails
[cascardo/linux.git] / drivers / usb / core / hub.c
index 572769b..6241b71 100644 (file)
@@ -2503,6 +2503,10 @@ int usb_port_suspend(struct usb_device *udev, pm_message_t msg)
                                NULL, 0,
                                USB_CTRL_SET_TIMEOUT);
 
+               /* Try to enable USB2 hardware LPM again */
+               if (udev->usb2_hw_lpm_capable == 1)
+                       usb_set_usb2_hardware_lpm(udev, 1);
+
                /* System sleep transitions should never fail */
                if (!PMSG_IS_AUTO(msg))
                        status = 0;