From: Andrew Bresticker <[email protected]>

USB host controllers can take a significant amount of time to suspend
and resume, adding several hundred miliseconds to the kernel resume
time. Since the XHCI controller has no outside dependencies (other than
clocks, which are suspended late/resumed early), allow it to suspend and
resume asynchronously.

Signed-off-by: Andrew Bresticker <[email protected]>
Tested-by: Andrew Bresticker <[email protected]>
Tested-by: Robert Foss <[email protected]>
Signed-off-by: Robert Foss <[email protected]>
Reviewed-by: Baolin Wang <[email protected]>
---

Changes since v8:
 - Rebased on upstream/master
 - Added r-b of Baolin Wang


 drivers/usb/host/xhci-plat.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
index e5834dd9bcde..8ef34fe4d5c0 100644
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -255,6 +255,8 @@ static int xhci_plat_probe(struct platform_device *pdev)
        if (ret)
                goto dealloc_usb2_hcd;
 
+       device_enable_async_suspend(&pdev->dev);
+
        return 0;
 
 
-- 
2.11.0.453.g787f75f05

Reply via email to