blob: c5c16dc4f694e832ca2f680fb4fb0a9e646fb2ef [file] [log] [blame]
Ben Guthrof447d562012-04-21 00:11:04 +08001#ifndef _XEN_SMP_H
2
Boris Ostrovsky5fc509b2016-08-03 13:22:27 -04003#ifdef CONFIG_SMP
Ben Guthrof447d562012-04-21 00:11:04 +08004extern void xen_send_IPI_mask(const struct cpumask *mask,
5 int vector);
6extern void xen_send_IPI_mask_allbutself(const struct cpumask *mask,
7 int vector);
8extern void xen_send_IPI_allbutself(int vector);
Ben Guthrof447d562012-04-21 00:11:04 +08009extern void xen_send_IPI_all(int vector);
10extern void xen_send_IPI_self(int vector);
11
Boris Ostrovsky5fc509b2016-08-03 13:22:27 -040012extern int xen_smp_intr_init(unsigned int cpu);
13extern void xen_smp_intr_free(unsigned int cpu);
14
15#else /* CONFIG_SMP */
16
17static inline int xen_smp_intr_init(unsigned int cpu)
18{
19 return 0;
20}
21static inline void xen_smp_intr_free(unsigned int cpu) {}
22#endif /* CONFIG_SMP */
23
Mukesh Rathora2ef5dc2014-09-10 16:36:06 -070024#ifdef CONFIG_XEN_PVH
25extern void xen_pvh_early_cpu_init(int cpu, bool entry);
26#else
27static inline void xen_pvh_early_cpu_init(int cpu, bool entry)
28{
29}
30#endif
31
Ben Guthrof447d562012-04-21 00:11:04 +080032#endif