On Sat, 24 Mar 2012, Chen Peter-B29397 wrote: > > > This patch may not useful, as if the remote wakeup occurs before the > > bus(roothub) suspend > > > (taking ehic_bus_suspend as an example), the bus suspend will quit due > > to there is a resume > > > signal at one port. > > > > No, not always. For example, the wakeup event might be a disconnect > > instead of a resume at some port. > > > For disconnect wakeup event, I think it should not forbid system to suspend. Sure it should. If it didn't forbid the system to suspend then it wouldn't be a wakeup event, by definition. Some controllers, such as EHCI, allow you to specify which sorts of events will generate a wakeup signal. In theory, we could tell those controllers that disconnects should not count as wakeups. But for external hubs, there is no way to do this. An external hub that is enabled for remote wakeup will generate a wakeup signal whenever it sees a connect change, an overcurrent change, a suspend change, or a wakeup request from downstream. Alan Stern -- 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