The kernel's policy regarding default wakeup-enable settings is explained in the kerneldoc for device_init_wakeup() (and maybe in some other places too): * By default, most devices should leave wakeup disabled. The exceptions are * devices that everyone expects to be wakeup sources: keyboards, power buttons, * possibly network interfaces, etc. I suggest that we add to this list all devices that do not generate wakeup requests on their own initiative but act as bridges, forwarding wakeup requests from one bus to another. For example, a USB host controller can act as a bridge between a PCI bus and a USB bus, and it can forward wakeup requests from the USB bus to the PCI bus. The controller doesn't generate any wakeup requests on its own. (The root hub it provides _can_ produce wakeup requests, but the root hub is represented by a separate device structure and has its own independent wakeup settings.) If device_may_wakeup() returns false for the host controller then the controller's driver will configure it not to forward wakeup requests during system sleep. Following the kernel's policy, USB host controllers currently are disabled for remote wakeup by default. This really isn't what we should do. If the user wants a USB device to wake the system then he has to "echo enabled >/sys/.../power/wakeup" for both the device and its controller. There's no reason to require that second step -- we lose nothing by enabling wakeups on the controller by default. What do people think about this change in the policy? 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