From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Greg KH <greg@kroah.com>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Kay Sievers <kay.sievers@vrfy.org>,
Andrew Morton <akpm@linux-foundation.org>,
Alan Stern <stern@rowland.harvard.edu>,
David Brownell <david-b@pacbell.net>,
LKML <linux-kernel@vger.kernel.org>, Pavel Machek <pavel@ucw.cz>
Subject: [PATCH -mm 2/3] PM: Remove power_state.event checks from suspend core code
Date: Sun, 17 Jun 2007 19:49:20 +0200 [thread overview]
Message-ID: <200706171949.21087.rjw@sisk.pl> (raw)
In-Reply-To: <200706171946.26174.rjw@sisk.pl>
From: Rafael J. Wysocki <rjw@sisk.pl>
The suspend routines should be called for every device during a system sleep
transition, regardless of the device's state, so that drivers can regard these
method calls as notifications that the system is about to go to sleep, rather
than as directives to put their devices into the 'off' state.
This is documented in Documentation/power/devices.txt and is already done in
the core resume code, so it seems reasonable to make the core suspend code
behave accordingly.
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
---
drivers/base/power/suspend.c | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)
Index: linux-2.6.22-rc4/drivers/base/power/suspend.c
===================================================================
--- linux-2.6.22-rc4.orig/drivers/base/power/suspend.c 2007-06-16 01:08:13.000000000 +0200
+++ linux-2.6.22-rc4/drivers/base/power/suspend.c 2007-06-16 01:12:04.000000000 +0200
@@ -71,21 +71,19 @@ int suspend_device(struct device * dev,
dev->parent->power.power_state.event);
}
- if (dev->class && dev->class->suspend && !dev->power.power_state.event) {
+ if (dev->class && dev->class->suspend) {
suspend_device_dbg(dev, state, "class ");
error = dev->class->suspend(dev, state);
suspend_report_result(dev->class->suspend, error);
}
- if (!error && dev->type && dev->type->suspend
- && !dev->power.power_state.event) {
+ if (!error && dev->type && dev->type->suspend) {
suspend_device_dbg(dev, state, "type ");
error = dev->type->suspend(dev, state);
suspend_report_result(dev->type->suspend, error);
}
- if (!error && dev->bus && dev->bus->suspend
- && !dev->power.power_state.event) {
+ if (!error && dev->bus && dev->bus->suspend) {
suspend_device_dbg(dev, state, "");
error = dev->bus->suspend(dev, state);
suspend_report_result(dev->bus->suspend, error);
@@ -104,8 +102,7 @@ static int suspend_device_late(struct de
{
int error = 0;
- if (dev->bus && dev->bus->suspend_late
- && !dev->power.power_state.event) {
+ if (dev->bus && dev->bus->suspend_late) {
suspend_device_dbg(dev, state, "LATE ");
error = dev->bus->suspend_late(dev, state);
suspend_report_result(dev->bus->suspend_late, error);
next prev parent reply other threads:[~2007-06-17 18:10 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-13 13:51 [PATCH -mm 0/7] PM: Remove unused and unnecessary features from suspend and resume core Rafael J. Wysocki
2007-06-13 13:53 ` [PATCH -mm 1/7] PM: Remove pm_parent from struct dev_pm_info Rafael J. Wysocki
2007-06-13 13:55 ` [PATCH -mm 2/7] PM: Remove saved_state " Rafael J. Wysocki
2007-06-13 14:19 ` [PATCH -mm 3/7] PM: Simplify suspend_device Rafael J. Wysocki
2007-06-13 14:20 ` [PATCH -mm 4/7] PM: Remove suspend and resume support from struct device_type Rafael J. Wysocki
2007-06-13 22:20 ` Kay Sievers
2007-06-14 4:10 ` Dmitry Torokhov
2007-06-14 12:37 ` Rafael J. Wysocki
2007-06-14 12:59 ` Dmitry Torokhov
2007-06-14 17:46 ` Greg KH
2007-06-14 22:32 ` Rafael J. Wysocki
2007-06-14 22:50 ` Greg KH
2007-06-14 23:14 ` Greg KH
2007-06-14 23:30 ` Rafael J. Wysocki
2007-06-17 17:46 ` [PATCH -mm 0/3] PM: Remove unused and unnecessary features from core suspend code (continued) Rafael J. Wysocki
2007-06-17 17:48 ` [PATCH -mm 1/3] PM: Remove prev_state from struct dev_pm_info Rafael J. Wysocki
2007-06-17 17:49 ` Rafael J. Wysocki [this message]
2007-06-17 17:50 ` [PATCH -mm 3/3] PM: Do not check parent state in suspend and resume core code Rafael J. Wysocki
2007-06-14 14:19 ` [PATCH -mm 4/7] PM: Remove suspend and resume support from struct device_type David Brownell
2007-06-14 14:44 ` Dmitry Torokhov
2007-06-14 15:03 ` David Brownell
2007-06-14 15:17 ` Dmitry Torokhov
2007-06-13 15:16 ` [PATCH -mm 5/7] PM: Remove prev_state from struct dev_pm_info Rafael J. Wysocki
2007-06-13 15:16 ` [PATCH -mm 6/7] PM: Remove power_state.event checks from suspend core code Rafael J. Wysocki
2007-06-14 14:21 ` David Brownell
2007-06-14 22:46 ` Rafael J. Wysocki
2007-06-15 2:00 ` Alan Stern
2007-06-15 21:57 ` Rafael J. Wysocki
2007-06-17 19:26 ` Rafael J. Wysocki
2007-06-13 15:17 ` [PATCH -mm 7/7] PM: Do not check parent state in suspend and resume " Rafael J. Wysocki
2007-06-13 21:59 ` [PATCH -mm 0/7] PM: Remove unused and unnecessary features from suspend and resume core Greg KH
2007-06-13 23:02 ` Rafael J. Wysocki
2007-06-13 23:36 ` Pavel Machek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200706171949.21087.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=akpm@linux-foundation.org \
--cc=david-b@pacbell.net \
--cc=dmitry.torokhov@gmail.com \
--cc=greg@kroah.com \
--cc=kay.sievers@vrfy.org \
--cc=linux-kernel@vger.kernel.org \
--cc=pavel@ucw.cz \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox