aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2011-10-01 15:09:39 -0400
committerArnd Bergmann <arnd@arndb.de>2011-10-01 15:09:39 -0400
commit15e0d9e37c7fe9711b60f47221c394d45553ad8c (patch)
treefd46b3ef48612d8c39a80627ee5c8fa9c422e15e /arch/arm
parent82b9c18dc0ee38b5c78c5d09b9cffc79d98613c5 (diff)
ARM: pm: let platforms select cpu_suspend support
Support for the cpu_suspend functions is only built-in when CONFIG_PM_SLEEP is enabled, but omap3/4, exynos4 and pxa always call cpu_suspend when CONFIG_PM is enabled. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/Kconfig4
-rw-r--r--arch/arm/kernel/Makefile2
-rw-r--r--arch/arm/mach-exynos4/Kconfig1
-rw-r--r--arch/arm/mach-omap2/Kconfig2
-rw-r--r--arch/arm/mm/proc-v7.S2
5 files changed, 9 insertions, 2 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 497af51e917..3445f50b0b7 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -631,6 +631,7 @@ config ARCH_PXA
631 select SPARSE_IRQ 631 select SPARSE_IRQ
632 select AUTO_ZRELADDR 632 select AUTO_ZRELADDR
633 select MULTI_IRQ_HANDLER 633 select MULTI_IRQ_HANDLER
634 select ARM_CPU_SUSPEND if PM
634 help 635 help
635 Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 636 Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
636 637
@@ -2077,6 +2078,9 @@ config ARCH_SUSPEND_POSSIBLE
2077 CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE 2078 CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE
2078 def_bool y 2079 def_bool y
2079 2080
2081config ARM_CPU_SUSPEND
2082 def_bool PM_SLEEP
2083
2080endmenu 2084endmenu
2081 2085
2082source "net/Kconfig" 2086source "net/Kconfig"
diff --git a/arch/arm/kernel/Makefile b/arch/arm/kernel/Makefile
index f7887dc53c1..4ce3303a419 100644
--- a/arch/arm/kernel/Makefile
+++ b/arch/arm/kernel/Makefile
@@ -29,7 +29,7 @@ obj-$(CONFIG_MODULES) += armksyms.o module.o
29obj-$(CONFIG_ARTHUR) += arthur.o 29obj-$(CONFIG_ARTHUR) += arthur.o
30obj-$(CONFIG_ISA_DMA) += dma-isa.o 30obj-$(CONFIG_ISA_DMA) += dma-isa.o
31obj-$(CONFIG_PCI) += bios32.o isa.o 31obj-$(CONFIG_PCI) += bios32.o isa.o
32obj-$(CONFIG_PM_SLEEP) += sleep.o 32obj-$(CONFIG_ARM_CPU_SUSPEND) += sleep.o
33obj-$(CONFIG_HAVE_SCHED_CLOCK) += sched_clock.o 33obj-$(CONFIG_HAVE_SCHED_CLOCK) += sched_clock.o
34obj-$(CONFIG_SMP) += smp.o smp_tlb.o 34obj-$(CONFIG_SMP) += smp.o smp_tlb.o
35obj-$(CONFIG_HAVE_ARM_SCU) += smp_scu.o 35obj-$(CONFIG_HAVE_ARM_SCU) += smp_scu.o
diff --git a/arch/arm/mach-exynos4/Kconfig b/arch/arm/mach-exynos4/Kconfig
index 0c77ab99fa1..fc1f92dfbea 100644
--- a/arch/arm/mach-exynos4/Kconfig
+++ b/arch/arm/mach-exynos4/Kconfig
@@ -12,6 +12,7 @@ if ARCH_EXYNOS4
12config CPU_EXYNOS4210 12config CPU_EXYNOS4210
13 bool 13 bool
14 select S3C_PL330_DMA 14 select S3C_PL330_DMA
15 select ARM_CPU_SUSPEND if PM
15 help 16 help
16 Enable EXYNOS4210 CPU support 17 Enable EXYNOS4210 CPU support
17 18
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 57b66d590c5..89bfb49389f 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -36,6 +36,7 @@ config ARCH_OMAP3
36 select ARM_L1_CACHE_SHIFT_6 if !ARCH_OMAP4 36 select ARM_L1_CACHE_SHIFT_6 if !ARCH_OMAP4
37 select ARCH_HAS_OPP 37 select ARCH_HAS_OPP
38 select PM_OPP if PM 38 select PM_OPP if PM
39 select ARM_CPU_SUSPEND if PM
39 40
40config ARCH_OMAP4 41config ARCH_OMAP4
41 bool "TI OMAP4" 42 bool "TI OMAP4"
@@ -50,6 +51,7 @@ config ARCH_OMAP4
50 select ARCH_HAS_OPP 51 select ARCH_HAS_OPP
51 select PM_OPP if PM 52 select PM_OPP if PM
52 select USB_ARCH_HAS_EHCI 53 select USB_ARCH_HAS_EHCI
54 select ARM_CPU_SUSPEND if PM
53 55
54comment "OMAP Core Type" 56comment "OMAP Core Type"
55 depends on ARCH_OMAP2 57 depends on ARCH_OMAP2
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index a30e78542cc..591accdb56e 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -217,7 +217,7 @@ ENDPROC(cpu_v7_set_pte_ext)
217/* Suspend/resume support: derived from arch/arm/mach-s5pv210/sleep.S */ 217/* Suspend/resume support: derived from arch/arm/mach-s5pv210/sleep.S */
218.globl cpu_v7_suspend_size 218.globl cpu_v7_suspend_size
219.equ cpu_v7_suspend_size, 4 * 9 219.equ cpu_v7_suspend_size, 4 * 9
220#ifdef CONFIG_PM_SLEEP 220#ifdef CONFIG_ARM_CPU_SUSPEND
221ENTRY(cpu_v7_do_suspend) 221ENTRY(cpu_v7_do_suspend)
222 stmfd sp!, {r4 - r11, lr} 222 stmfd sp!, {r4 - r11, lr}
223 mrc p15, 0, r4, c13, c0, 0 @ FCSE/PID 223 mrc p15, 0, r4, c13, c0, 0 @ FCSE/PID