aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-exynos/hotplug.c
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2011-09-08 08:15:22 -0400
committerArnd Bergmann <arnd@arndb.de>2012-09-14 05:14:50 -0400
commit06853ae475e1386d6d11d139ba7bf2c97b3d1768 (patch)
tree601470fcced6d92d29017b6efefbb4bdc2008a0f /arch/arm/mach-exynos/hotplug.c
parenta17257322f5e6ca376c15908b55423369274fcad (diff)
ARM: SoC: convert Exynos4 to SMP operations
Convert Exynos4 to use struct smp_operations to provide its SMP and CPU hotplug operations. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Acked-by: Nicolas Pitre <nico@linaro.org> Tested-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/mach-exynos/hotplug.c')
-rw-r--r--arch/arm/mach-exynos/hotplug.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/arch/arm/mach-exynos/hotplug.c b/arch/arm/mach-exynos/hotplug.c
index 9c17a0a43858..edccc36dd692 100644
--- a/arch/arm/mach-exynos/hotplug.c
+++ b/arch/arm/mach-exynos/hotplug.c
@@ -21,6 +21,8 @@
21 21
22#include <mach/regs-pmu.h> 22#include <mach/regs-pmu.h>
23 23
24#include "common.h"
25
24extern volatile int pen_release; 26extern volatile int pen_release;
25 27
26static inline void cpu_enter_lowpower(void) 28static inline void cpu_enter_lowpower(void)
@@ -95,17 +97,12 @@ static inline void platform_do_lowpower(unsigned int cpu, int *spurious)
95 } 97 }
96} 98}
97 99
98int platform_cpu_kill(unsigned int cpu)
99{
100 return 1;
101}
102
103/* 100/*
104 * platform-specific code to shutdown a CPU 101 * platform-specific code to shutdown a CPU
105 * 102 *
106 * Called with IRQs disabled 103 * Called with IRQs disabled
107 */ 104 */
108void platform_cpu_die(unsigned int cpu) 105void __ref exynos_cpu_die(unsigned int cpu)
109{ 106{
110 int spurious = 0; 107 int spurious = 0;
111 108
@@ -124,12 +121,3 @@ void platform_cpu_die(unsigned int cpu)
124 if (spurious) 121 if (spurious)
125 pr_warn("CPU%u: %u spurious wakeup calls\n", cpu, spurious); 122 pr_warn("CPU%u: %u spurious wakeup calls\n", cpu, spurious);
126} 123}
127
128int platform_cpu_disable(unsigned int cpu)
129{
130 /*
131 * we don't allow CPU 0 to be shutdown (it is still too special
132 * e.g. clock tick interrupts)
133 */
134 return cpu == 0 ? -EPERM : 0;
135}