Hibernation: Clean up Kconfig (V2)
authorJohannes Berg <johannes@sipsolutions.net>
Sat, 8 Dec 2007 01:12:39 +0000 (02:12 +0100)
committerLen Brown <len.brown@intel.com>
Fri, 1 Feb 2008 23:30:55 +0000 (18:30 -0500)
This cleans up the hibernation Kconfig and removes the need to
declare centrally which architectures support hibernation. All
architectures that currently support hibernation are modified
accordingly.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Paul Mackerras <paulus@samba.org>
Cc: Pavel Machek <pavel@suse.cz>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Len Brown <len.brown@intel.com>
arch/powerpc/Kconfig
arch/x86/Kconfig
kernel/power/Kconfig

index 9c44af3..68f0cf7 100644 (file)
@@ -151,9 +151,19 @@ config DEFAULT_UIMAGE
 config REDBOOT
        bool
 
-config PPC64_SWSUSP
+config HIBERNATE_32
        bool
-       depends on PPC64 && (BROKEN || (PPC_PMAC64 && EXPERIMENTAL))
+       depends on (PPC_PMAC && !SMP) || BROKEN
+       default y
+
+config HIBERNATE_64
+       bool
+       depends on BROKEN || (PPC_PMAC64 && EXPERIMENTAL)
+       default y
+
+config ARCH_HIBERNATION_POSSIBLE
+       bool
+       depends on (PPC64 && HIBERNATE_64) || (PPC32 && HIBERNATE_32)
        default y
 
 config PPC_DCR_NATIVE
index 93e6667..120070c 100644 (file)
@@ -112,6 +112,10 @@ config ARCH_SUPPORTS_OPROFILE
 
 select HAVE_KVM
 
+config ARCH_HIBERNATION_POSSIBLE
+       def_bool y
+       depends on !SMP || !X86_VOYAGER
+
 config ZONE_DMA32
        bool
        default X86_64
index 06a08f7..fd76d54 100644 (file)
@@ -84,7 +84,8 @@ config PM_TRACE_RTC
 
 config PM_SLEEP_SMP
        bool
-       depends on SUSPEND_SMP_POSSIBLE || HIBERNATION_SMP_POSSIBLE
+       depends on SMP
+       depends on SUSPEND_SMP_POSSIBLE || ARCH_HIBERNATION_POSSIBLE
        depends on PM_SLEEP
        select HOTPLUG_CPU
        default y
@@ -118,22 +119,9 @@ config SUSPEND
          powered and thus its contents are preserved, such as the
          suspend-to-RAM state (i.e. the ACPI S3 state).
 
-config HIBERNATION_UP_POSSIBLE
-       bool
-       depends on X86 || PPC64_SWSUSP || PPC32
-       depends on !SMP
-       default y
-
-config HIBERNATION_SMP_POSSIBLE
-       bool
-       depends on (X86 && !X86_VOYAGER) || PPC64_SWSUSP
-       depends on SMP
-       default y
-
 config HIBERNATION
        bool "Hibernation (aka 'suspend to disk')"
-       depends on PM && SWAP
-       depends on HIBERNATION_UP_POSSIBLE || HIBERNATION_SMP_POSSIBLE
+       depends on PM && SWAP && ARCH_HIBERNATION_POSSIBLE
        ---help---
          Enable the suspend to disk (STD) functionality, which is usually
          called "hibernation" in user interfaces.  STD checkpoints the