We can babble interrupt if we attempt to switch to USB host mode too
soon after enabling musb. Let's fix the issue by waiting a bit in
runtime_resume.

Cc: Jacopo Mondi <jac...@jmondi.org>
Cc: Marcel Partap <mpar...@gmx.net>
Cc: Merlijn Wajer <merl...@wizzup.org>
Cc: Michael Scott <hashcod...@gmail.com>
Cc: NeKit <nekit1...@gmail.com>
Cc: Pavel Machek <pa...@ucw.cz>
Cc: Sebastian Reichel <s...@kernel.org>
Signed-off-by: Tony Lindgren <t...@atomide.com>
---
 drivers/usb/musb/omap2430.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/usb/musb/omap2430.c b/drivers/usb/musb/omap2430.c
--- a/drivers/usb/musb/omap2430.c
+++ b/drivers/usb/musb/omap2430.c
@@ -552,6 +552,9 @@ static int omap2430_runtime_resume(struct device *dev)
        musb_writel(musb->mregs, OTG_INTERFSEL,
                    musb->context.otg_interfsel);
 
+       /* Wait for musb to get oriented. Otherwise we can get babble */
+       usleep_range(200000, 250000);
+
        return 0;
 }
 
-- 
2.23.0

Reply via email to