aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-vexpress/include
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2010-02-11 16:56:07 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-05-02 04:35:39 -0400
commit59ac59f6f1432aa9417d2592bdfd17c99804dd66 (patch)
treec4251d8827165d9eb926d77470a59fb196f998f8 /arch/arm/mach-vexpress/include
parentfef88f10767cfd9f9b4eebb5d5490214c5e13ad5 (diff)
ARM: Add Versatile Express SMP support
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-vexpress/include')
-rw-r--r--arch/arm/mach-vexpress/include/mach/smp.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/arch/arm/mach-vexpress/include/mach/smp.h b/arch/arm/mach-vexpress/include/mach/smp.h
new file mode 100644
index 000000000000..72a9621ed087
--- /dev/null
+++ b/arch/arm/mach-vexpress/include/mach/smp.h
@@ -0,0 +1,21 @@
1#ifndef __MACH_SMP_H
2#define __MACH_SMP_H
3
4#include <asm/hardware/gic.h>
5
6#define hard_smp_processor_id() \
7 ({ \
8 unsigned int cpunum; \
9 __asm__("mrc p15, 0, %0, c0, c0, 5" \
10 : "=r" (cpunum)); \
11 cpunum &= 0x0F; \
12 })
13
14/*
15 * We use IRQ1 as the IPI
16 */
17static inline void smp_cross_call(const struct cpumask *mask)
18{
19 gic_raise_softirq(mask, 1);
20}
21#endif