In order to completely remove marginal power consumption in PM suspend,
we need to let the controller settle down before being stopped.
In ohci_hcd_at91_drv_suspend() function, one additional delay is needed before
to stop the clocks.

Reported-by: Boris Krasnovskiy <boris.krasnovs...@lairdconnect.com>
Signed-off-by: Nicolas Ferre <nicolas.fe...@microchip.com>
---
 drivers/usb/host/ohci-at91.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/usb/host/ohci-at91.c b/drivers/usb/host/ohci-at91.c
index cb63bcd5049a..85d67fe42d59 100644
--- a/drivers/usb/host/ohci-at91.c
+++ b/drivers/usb/host/ohci-at91.c
@@ -628,6 +628,7 @@ ohci_hcd_at91_drv_suspend(struct device *dev)
 
                /* flush the writes */
                (void) ohci_readl (ohci, &ohci->regs->control);
+               msleep(1);
                at91_stop_clock(ohci_at91);
        }
 
-- 
2.17.1

Reply via email to