On Feb 1, 2008 12:36 PM, Len Brown <lenb@xxxxxxxxxx> wrote: > From: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> > > 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. > Thanks, OK for Blackfin Acked-by: Bryan Wu <bryan.wu@xxxxxxxxxx> > Signed-off-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> > Acked-by: Russell King <rmk@xxxxxxxxxxxxxxxx> > Acked-by: Paul Mackerras <paulus@xxxxxxxxx> > Acked-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > Acked-by: Paul Mundt <lethal@xxxxxxxxxxxx> > Cc: Pavel Machek <pavel@xxxxxxx> > Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx> > Signed-off-by: Len Brown <len.brown@xxxxxxxxx> > --- > arch/arm/Kconfig | 3 +++ > arch/blackfin/Kconfig | 4 ++++ > arch/frv/Kconfig | 5 +++++ > arch/mips/Kconfig | 4 ++++ > arch/powerpc/Kconfig | 4 ++++ > arch/sh/Kconfig | 4 ++++ > arch/x86/Kconfig | 4 ++++ > kernel/power/Kconfig | 21 +++------------------ > 8 files changed, 31 insertions(+), 18 deletions(-) > > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig > index 77201d3..a00d8b9 100644 > --- a/arch/arm/Kconfig > +++ b/arch/arm/Kconfig > @@ -1035,6 +1035,9 @@ menu "Power management options" > > source "kernel/power/Kconfig" > > +config ARCH_SUSPEND_POSSIBLE > + def_bool y > + > endmenu > > source "net/Kconfig" > diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig > index fc7ca86..4802eb7 100644 > --- a/arch/blackfin/Kconfig > +++ b/arch/blackfin/Kconfig > @@ -898,6 +898,10 @@ endmenu > menu "Power management options" > source "kernel/power/Kconfig" > > +config ARCH_SUSPEND_POSSIBLE > + def_bool y > + depends on !SMP > + > choice > prompt "Select PM Wakeup Event Source" > default PM_WAKEUP_GPIO_BY_SIC_IWR > diff --git a/arch/frv/Kconfig b/arch/frv/Kconfig > index 43153e7..2e25b95 100644 > --- a/arch/frv/Kconfig > +++ b/arch/frv/Kconfig > @@ -357,6 +357,11 @@ source "drivers/pcmcia/Kconfig" > # should probably wait a while. > > menu "Power management options" > + > +config ARCH_SUSPEND_POSSIBLE > + def_bool y > + depends on !SMP > + > source kernel/power/Kconfig > endmenu > > diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig > index 4fad0a3..e387f3a 100644 > --- a/arch/mips/Kconfig > +++ b/arch/mips/Kconfig > @@ -2086,6 +2086,10 @@ endmenu > > menu "Power management options" > > +config ARCH_SUSPEND_POSSIBLE > + def_bool y > + depends on !SMP > + > source "kernel/power/Kconfig" > > endmenu > diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig > index 68f0cf7..824140d 100644 > --- a/arch/powerpc/Kconfig > +++ b/arch/powerpc/Kconfig > @@ -166,6 +166,10 @@ config ARCH_HIBERNATION_POSSIBLE > depends on (PPC64 && HIBERNATE_64) || (PPC32 && HIBERNATE_32) > default y > > +config ARCH_SUSPEND_POSSIBLE > + def_bool y > + depends on ADB_PMU || PPC_EFIKA || PPC_LITE5200 > + > config PPC_DCR_NATIVE > bool > default n > diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig > index 1cd9c8f..b30c4c3 100644 > --- a/arch/sh/Kconfig > +++ b/arch/sh/Kconfig > @@ -882,6 +882,10 @@ endmenu > menu "Power management options (EXPERIMENTAL)" > depends on EXPERIMENTAL && SYS_SUPPORTS_PM > > +config ARCH_SUSPEND_POSSIBLE > + def_bool y > + depends on !SMP > + > source kernel/power/Kconfig > > endmenu > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > index 9c511dd..340e81a 100644 > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -113,6 +113,10 @@ config ARCH_HIBERNATION_POSSIBLE > def_bool y > depends on !SMP || !X86_VOYAGER > > +config ARCH_SUSPEND_POSSIBLE > + def_bool y > + depends on !X86_VOYAGER > + > config ZONE_DMA32 > bool > default X86_64 > diff --git a/kernel/power/Kconfig b/kernel/power/Kconfig > index fd76d54..f8153fd 100644 > --- a/kernel/power/Kconfig > +++ b/kernel/power/Kconfig > @@ -85,7 +85,7 @@ config PM_TRACE_RTC > config PM_SLEEP_SMP > bool > depends on SMP > - depends on SUSPEND_SMP_POSSIBLE || ARCH_HIBERNATION_POSSIBLE > + depends on ARCH_SUSPEND_POSSIBLE || ARCH_HIBERNATION_POSSIBLE > depends on PM_SLEEP > select HOTPLUG_CPU > default y > @@ -95,29 +95,14 @@ config PM_SLEEP > depends on SUSPEND || HIBERNATION > 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 > 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 > ---help--- > Allow the system to enter sleep states in which main memory is > 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 > bool "Hibernation (aka 'suspend to disk')" > -- > 1.5.4.rc5.16.gc0279 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ > - To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html