summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2006-11-01 13:23:14 +0100
committerLen Brown <len.brown@intel.com>2006-11-01 22:40:23 -0500
commit9185cfa92507d07ac787bc73d06c42222eec7239 (patch)
treeaffcb8c0164b79f9fa5932cd7700498560794a82
parent8b0dc866dd9b8d10a53cb3537385a51b7ee54b62 (diff)
ACPI: S4: Use "platform" rather than "shutdown" mode by default
It has been reported that on some systems the functionality after a resume from disk is limited if the system is simply powered off during the suspend instead of using the ACPI S4 suspend (aka platform mode). Unfortunately the default is currently to power off the system during the suspend so the users of these systems experience problems after the resume if they don't switch to the platform mode explicitly. This patch makes swsusp use the platform mode by default to avoid such situations. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Stefan Seyfried <seife@suse.de> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r--kernel/power/disk.c8
-rw-r--r--kernel/power/main.c2
2 files changed, 6 insertions, 4 deletions
diff --git a/kernel/power/disk.c b/kernel/power/disk.c
index d3a158a60312..ae6bbc903b7d 100644
--- a/kernel/power/disk.c
+++ b/kernel/power/disk.c
@@ -44,9 +44,11 @@ static void power_down(suspend_disk_method_t mode)
switch(mode) {
case PM_DISK_PLATFORM:
- kernel_shutdown_prepare(SYSTEM_SUSPEND_DISK);
- error = pm_ops->enter(PM_SUSPEND_DISK);
- break;
+ if (pm_ops && pm_ops->enter) {
+ kernel_shutdown_prepare(SYSTEM_SUSPEND_DISK);
+ error = pm_ops->enter(PM_SUSPEND_DISK);
+ break;
+ }
case PM_DISK_SHUTDOWN:
kernel_power_off();
break;
diff --git a/kernel/power/main.c b/kernel/power/main.c
index 873228c71dab..1210961a5aa7 100644
--- a/kernel/power/main.c
+++ b/kernel/power/main.c
@@ -27,7 +27,7 @@
DECLARE_MUTEX(pm_sem);
struct pm_ops *pm_ops;
-suspend_disk_method_t pm_disk_mode = PM_DISK_SHUTDOWN;
+suspend_disk_method_t pm_disk_mode = PM_DISK_PLATFORM;
/**
* pm_set_ops - Set the global power method table.