> From: Pratyush Anand [mailto:pratyush.anand@xxxxxx] > Sent: Friday, April 12, 2013 1:44 AM > > Hi Folks, > > I am trying to understand working of one hibernation scenario wrt to usb > device controller say dwc3. > > 1. Host PC goes to suspend and enters into U3. > 2. Device also enters U3 and generate hibernation event to software. > 3. At this moment system with usb device goes to power save mode > (say suspend to RAM). Everything is off except PMC and USB Phy. > 4. After some time PC with usb host resumes. > 5. U3 exit is detected by device PHY and communicated to PMC. > 6. PMC does the reset and whole system resumes. > > My question is, how does usb device resume in this case? I understand > that there is a limitation > of 20 ms for U3_Exit. How will linux driver be able to do this within > this time limit? 20 ms is quite a long time. But if your system cannot resume that quickly from whatever sleep state it was in, then you may need some special code to do the USB resume early, before the entire system has woken up. But even if you do not meet the 20 ms requirement, I think the worst thing that can happen is that the host will reset the device and re-enumerate it. -- Paul -- 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