summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-realview/platsmp.c
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2008-02-04 17:30:57 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2008-02-04 18:52:19 +0100
commita8655e83fc44ec2b92cbea9f3ff3cc0da05a991c (patch)
tree56bdc711208aca8b514e7366b56c66b9c05ac1be /arch/arm/mach-realview/platsmp.c
parent[ARM] 4813/1: Add SMP helper functions for clockevents support (diff)
downloadlinux-a8655e83fc44ec2b92cbea9f3ff3cc0da05a991c.tar.xz
linux-a8655e83fc44ec2b92cbea9f3ff3cc0da05a991c.zip
[ARM] 4814/1: RealView: Add broadcasting clockevents support for ARM11MPCore
This patch adds dummy local timers for each CPU so that the board clock device is used to broadcast events to the other CPUs. The patch also adds the declaration for the dummy_timer_setup function (the equivalent of local_timer_setup when CONFIG_LOCAL_TIMERS is not set). Due to the way clockevents work, the dummy timer on the first CPU has to be registered before the board timer. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-realview/platsmp.c')
-rw-r--r--arch/arm/mach-realview/platsmp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm/mach-realview/platsmp.c b/arch/arm/mach-realview/platsmp.c
index fce3596f9950..bb5eaa48520d 100644
--- a/arch/arm/mach-realview/platsmp.c
+++ b/arch/arm/mach-realview/platsmp.c
@@ -187,10 +187,14 @@ void __init smp_prepare_cpus(unsigned int max_cpus)
if (max_cpus > ncores)
max_cpus = ncores;
+#ifdef CONFIG_LOCAL_TIMERS
/*
- * Enable the local timer for primary CPU
+ * Enable the local timer for primary CPU. If the device is
+ * dummy (!CONFIG_LOCAL_TIMERS), it was already registers in
+ * realview_timer_init
*/
local_timer_setup(cpu);
+#endif
/*
* Initialise the present map, which describes the set of CPUs