On Fri, 7 May 2010 00:06:33 +0800 Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > On Thu, 6 May 2010, Du, Alek wrote: > > > Hi Alan, > > > > >With this patch, _none_ of the wakeup bits are enabled. That should > > >work, right? > > > > > I guess so, but if no wakeup bits set, how to handle remote wakeup case? Seems you removed remote wakeup case? > > The wakeup bits get set later, in ehci_set_wakeup_flags(). > > The point is that the wakeup bits take effect only when the controller > leaves D0. But ehci_bus_suspend() is called when the root hub is > suspended, which happens first. So at that time the wakeup bits aren't > needed. > > Alan Stern > Alan, As I tested, with the second patch, after entering phy low power mode, the port cannot detect any USB devices that plugged in. I also confirm that after set PHCD flag, any write to PORTSC is illegal. (I have another patch will send out soon named "Clear PHCD before resuming", but the patch is not related with this one) So it seems wakeup bits must set before set PHCD. So we may revise the flowchart a little bit, for example, if the HCD has hostpc, then set the wakeup bits like before, if the HCD is the normal one, then go your new way? Thanks, Alek -- 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