Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[sfrench/cifs-2.6.git] / arch / arm / mach-realview / include / mach / smp.h
1 #ifndef ASMARM_ARCH_SMP_H
2 #define ASMARM_ARCH_SMP_H
3
4
5 #include <asm/hardware/gic.h>
6
7 #define hard_smp_processor_id()                 \
8         ({                                              \
9                 unsigned int cpunum;                    \
10                 __asm__("mrc p15, 0, %0, c0, c0, 5"     \
11                         : "=r" (cpunum));               \
12                 cpunum &= 0x0F;                         \
13         })
14
15 /*
16  * We use IRQ1 as the IPI
17  */
18 static inline void smp_cross_call(const struct cpumask *mask)
19 {
20         gic_raise_softirq(mask, 1);
21 }
22
23 #endif