x86/xen: split off smp_hvm.c
[muen/linux.git] / arch / x86 / xen / smp.h
1 #ifndef _XEN_SMP_H
2
3 #ifdef CONFIG_SMP
4 extern void xen_send_IPI_mask(const struct cpumask *mask,
5                               int vector);
6 extern void xen_send_IPI_mask_allbutself(const struct cpumask *mask,
7                                 int vector);
8 extern void xen_send_IPI_allbutself(int vector);
9 extern void xen_send_IPI_all(int vector);
10 extern void xen_send_IPI_self(int vector);
11
12 extern int xen_smp_intr_init(unsigned int cpu);
13 extern void xen_smp_intr_free(unsigned int cpu);
14 int xen_smp_intr_init_pv(unsigned int cpu);
15 void xen_smp_intr_free_pv(unsigned int cpu);
16
17 void xen_smp_send_reschedule(int cpu);
18 void xen_smp_send_call_function_ipi(const struct cpumask *mask);
19 void xen_smp_send_call_function_single_ipi(int cpu);
20 #else /* CONFIG_SMP */
21
22 static inline int xen_smp_intr_init(unsigned int cpu)
23 {
24         return 0;
25 }
26 static inline void xen_smp_intr_free(unsigned int cpu) {}
27
28 static inline int xen_smp_intr_init_pv(unsigned int cpu)
29 {
30         return 0;
31 }
32 static inline void xen_smp_intr_free_pv(unsigned int cpu) {}
33 #endif /* CONFIG_SMP */
34
35 #endif