From fcae448c0011f31548f67ab1a77cdfd55ece5da7 Mon Sep 17 00:00:00 2001 From: Alan Stern Date: Mon, 26 Sep 2011 17:38:50 +0200 Subject: [PATCH] --- yaml --- r: 267082 b: refs/heads/master c: 8f88893c05f2f677f18f2ce5591b4bed5d4a7535 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/Documentation/power/devices.txt | 4 +++- trunk/drivers/base/power/wakeup.c | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index d5c23fe25788..b6e09ea7d8d5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 37cce26b32142f09a8967f6d238178af654b20de +refs/heads/master: 8f88893c05f2f677f18f2ce5591b4bed5d4a7535 diff --git a/trunk/Documentation/power/devices.txt b/trunk/Documentation/power/devices.txt index 3384d5996be2..29b7a9817f5a 100644 --- a/trunk/Documentation/power/devices.txt +++ b/trunk/Documentation/power/devices.txt @@ -152,7 +152,9 @@ try to use its wakeup mechanism. device_set_wakeup_enable() affects this flag; for the most part drivers should not change its value. The initial value of should_wakeup is supposed to be false for the majority of devices; the major exceptions are power buttons, keyboards, and Ethernet adapters whose WoL -(wake-on-LAN) feature has been set up with ethtool. +(wake-on-LAN) feature has been set up with ethtool. It should also default +to true for devices that don't generate wakeup requests on their own but merely +forward wakeup requests from one bus to another (like PCI bridges). Whether or not a device is capable of issuing wakeup events is a hardware matter, and the kernel is responsible for keeping track of it. By contrast, diff --git a/trunk/drivers/base/power/wakeup.c b/trunk/drivers/base/power/wakeup.c index 84f7c7d5a098..14ee07e9cc43 100644 --- a/trunk/drivers/base/power/wakeup.c +++ b/trunk/drivers/base/power/wakeup.c @@ -276,7 +276,9 @@ EXPORT_SYMBOL_GPL(device_set_wakeup_capable); * * 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. + * possibly network interfaces, etc. Also, devices that don't generate their + * own wakeup requests but merely forward requests from one bus to another + * (like PCI bridges) should have wakeup enabled by default. */ int device_init_wakeup(struct device *dev, bool enable) {