Просмотр исходного кода

Suspend: Clean up Kconfig (V2)

This cleans up the suspend Kconfig and removes the need to
declare centrally which architectures support suspend. All
architectures that currently support suspend are modified
accordingly.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Russell King <rmk@arm.linux.org.uk>
Acked-by: Paul Mackerras <paulus@samba.org>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Acked-by: Paul Mundt <lethal@linux-sh.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>
Johannes Berg 18 лет назад
Родитель
Сommit
f4cb570076
8 измененных файлов с 31 добавлено и 18 удалено
  1. 3 0
      arch/arm/Kconfig
  2. 4 0
      arch/blackfin/Kconfig
  3. 5 0
      arch/frv/Kconfig
  4. 4 0
      arch/mips/Kconfig
  5. 4 0
      arch/powerpc/Kconfig
  6. 4 0
      arch/sh/Kconfig
  7. 4 0
      arch/x86/Kconfig
  8. 3 18
      kernel/power/Kconfig

+ 3 - 0
arch/arm/Kconfig

@@ -1035,6 +1035,9 @@ menu "Power management options"
 
 
 source "kernel/power/Kconfig"
 source "kernel/power/Kconfig"
 
 
+config ARCH_SUSPEND_POSSIBLE
+	def_bool y
+
 endmenu
 endmenu
 
 
 source "net/Kconfig"
 source "net/Kconfig"

+ 4 - 0
arch/blackfin/Kconfig

@@ -898,6 +898,10 @@ endmenu
 menu "Power management options"
 menu "Power management options"
 source "kernel/power/Kconfig"
 source "kernel/power/Kconfig"
 
 
+config ARCH_SUSPEND_POSSIBLE
+	def_bool y
+	depends on !SMP
+
 choice
 choice
 	prompt "Select PM Wakeup Event Source"
 	prompt "Select PM Wakeup Event Source"
 	default PM_WAKEUP_GPIO_BY_SIC_IWR
 	default PM_WAKEUP_GPIO_BY_SIC_IWR

+ 5 - 0
arch/frv/Kconfig

@@ -357,6 +357,11 @@ source "drivers/pcmcia/Kconfig"
 #	  should probably wait a while.
 #	  should probably wait a while.
 
 
 menu "Power management options"
 menu "Power management options"
+
+config ARCH_SUSPEND_POSSIBLE
+	def_bool y
+	depends on !SMP
+
 source kernel/power/Kconfig
 source kernel/power/Kconfig
 endmenu
 endmenu
 
 

+ 4 - 0
arch/mips/Kconfig

@@ -2086,6 +2086,10 @@ endmenu
 
 
 menu "Power management options"
 menu "Power management options"
 
 
+config ARCH_SUSPEND_POSSIBLE
+	def_bool y
+	depends on !SMP
+
 source "kernel/power/Kconfig"
 source "kernel/power/Kconfig"
 
 
 endmenu
 endmenu

+ 4 - 0
arch/powerpc/Kconfig

@@ -166,6 +166,10 @@ config ARCH_HIBERNATION_POSSIBLE
 	depends on (PPC64 && HIBERNATE_64) || (PPC32 && HIBERNATE_32)
 	depends on (PPC64 && HIBERNATE_64) || (PPC32 && HIBERNATE_32)
 	default y
 	default y
 
 
+config ARCH_SUSPEND_POSSIBLE
+	def_bool y
+	depends on ADB_PMU || PPC_EFIKA || PPC_LITE5200
+
 config PPC_DCR_NATIVE
 config PPC_DCR_NATIVE
 	bool
 	bool
 	default n
 	default n

+ 4 - 0
arch/sh/Kconfig

@@ -882,6 +882,10 @@ endmenu
 menu "Power management options (EXPERIMENTAL)"
 menu "Power management options (EXPERIMENTAL)"
 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
 depends on EXPERIMENTAL && SYS_SUPPORTS_PM
 
 
+config ARCH_SUSPEND_POSSIBLE
+	def_bool y
+	depends on !SMP
+
 source kernel/power/Kconfig
 source kernel/power/Kconfig
 
 
 endmenu
 endmenu

+ 4 - 0
arch/x86/Kconfig

@@ -116,6 +116,10 @@ config ARCH_HIBERNATION_POSSIBLE
 	def_bool y
 	def_bool y
 	depends on !SMP || !X86_VOYAGER
 	depends on !SMP || !X86_VOYAGER
 
 
+config ARCH_SUSPEND_POSSIBLE
+	def_bool y
+	depends on !X86_VOYAGER
+
 config ZONE_DMA32
 config ZONE_DMA32
 	bool
 	bool
 	default X86_64
 	default X86_64

+ 3 - 18
kernel/power/Kconfig

@@ -85,7 +85,7 @@ config PM_TRACE_RTC
 config PM_SLEEP_SMP
 config PM_SLEEP_SMP
 	bool
 	bool
 	depends on SMP
 	depends on SMP
-	depends on SUSPEND_SMP_POSSIBLE || ARCH_HIBERNATION_POSSIBLE
+	depends on ARCH_SUSPEND_POSSIBLE || ARCH_HIBERNATION_POSSIBLE
 	depends on PM_SLEEP
 	depends on PM_SLEEP
 	select HOTPLUG_CPU
 	select HOTPLUG_CPU
 	default y
 	default y
@@ -95,29 +95,14 @@ config PM_SLEEP
 	depends on SUSPEND || HIBERNATION
 	depends on SUSPEND || HIBERNATION
 	default y
 	default y
 
 
-config SUSPEND_UP_POSSIBLE
-	bool
-	depends on (X86 && !X86_VOYAGER) || PPC || ARM || BLACKFIN || MIPS \
-		   || SUPERH || FRV
-	depends on !SMP
-	default y
-
-config SUSPEND_SMP_POSSIBLE
-	bool
-	depends on (X86 && !X86_VOYAGER) \
-		   || (PPC && (PPC_PSERIES || PPC_PMAC)) || ARM
-	depends on SMP
-	default y
-
 config SUSPEND
 config SUSPEND
 	bool "Suspend to RAM and standby"
 	bool "Suspend to RAM and standby"
-	depends on PM
-	depends on SUSPEND_UP_POSSIBLE || SUSPEND_SMP_POSSIBLE
+	depends on PM && ARCH_SUSPEND_POSSIBLE
 	default y
 	default y
 	---help---
 	---help---
 	  Allow the system to enter sleep states in which main memory is
 	  Allow the system to enter sleep states in which main memory is
 	  powered and thus its contents are preserved, such as the
 	  powered and thus its contents are preserved, such as the
-	  suspend-to-RAM state (i.e. the ACPI S3 state).
+	  suspend-to-RAM state (e.g. the ACPI S3 state).
 
 
 config HIBERNATION
 config HIBERNATION
 	bool "Hibernation (aka 'suspend to disk')"
 	bool "Hibernation (aka 'suspend to disk')"