Hi Felipe, On a custom built am335x based board, I am facing an issue with MUSB. It is vanilla kernel v4.0, except for some ASoC patches and v5 of Dave's PM series from kernel v3.19-rc5 rebased to it. If a USB storage device is plugged in before suspend and keep is plugged in during resume, the resume is taking ~15+ seconds. I noticed that it fails while sending USB control messages in hub_port_init(): http://lxr.free-electrons.com/source/drivers/usb/core/hub.c#L4390 After the failure, the USB device is logically disconnected and rediscovered again. So I can see the device mounted once the system is resumed, but it takes more time during resume. I observed that during system resume, there is a CONNECT interrupt received by MUSB controller: http://lxr.free-electrons.com/source/drivers/usb/musb/musb_core.c#L772 If the hub_port_init() is started before the CONNECT interrupt is served, I am hitting the issue. Almost every time the CONNECT interrupt is occurring ~150ms after musb_start() is invoked from musb_resume(). If I add a wait of ~200ms in musb_resume() just to make sure that CONNECT interrupt is received, I never hit the issue. I see that hub_port_init() is calling hub_port_reset before actually sending the USB control messages. The hub_port_reset() internally sets the RESET bit in MUSB POWER register, but I am not sure if that is a valid operation before getting the CONNECT interrupt. Any idea how to handle the resume operation in this case? Thanks, Vishal -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html