On Tue, 1 Jan 2013 bugzilla-daemon@xxxxxxxxxxxxxxxxxxx wrote: > https://bugzilla.kernel.org/show_bug.cgi?id=43081 > --- Comment #40 from Octavio Alvarez <alvarezp@xxxxxxxxxxxxxxxx> 2013-01-01 23:55:28 --- > Alan: > > > This makes it sound like the problem is caused by > > incorrect jumper settings on the motherboard. > > I don't think they are necessarily incorrect. Not choosing +5VSB (or having the > option) just gives the user a choice. I'd choose 5V instead of 5VSB if I made > sure no USB devices would ever wake up the system, to save some energy. It sounds very much as though ASUS expected that the OHCI controllers would never be enabled for wakeup, and therefore they set the motherboard jumpers to 5V instead of 5VSB. When its jumper is set that way, the controller doesn't receive StandBy power and so it gets a disconnect event on each connected port when the system goes to sleep. The disconnect events cause it to issue a wakeup signal immediately. The conclusion is that wakeup simply will not work unless the jumper is set to 5VSB. It doesn't matter what we do in the kernel or in the ACPI BIOS; software changes won't help because it is a hardware problem. This implies that we should leave wakeup disabled by default for OHCI controllers on ASUS motherboards. The user always has the ability to change this setting. (In theory we could check to see if the controller has an ACPI device associated with it; this would tell us whether the controller is actually on the motherboard or is part of an add-on PCI card and therefore immune to this problem. I suspect it's not worth the trouble to do this.) Grégory: You can find out for yourself what D states the controllers get put into if you boot a kernel that was built with CONFIG_USB_DEBUG enabled, and look at the dmesg log after a system suspend. 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