10ec53ecfSStefano Stabellini #ifndef _ASM_ARM_XEN_EVENTS_H 20ec53ecfSStefano Stabellini #define _ASM_ARM_XEN_EVENTS_H 30ec53ecfSStefano Stabellini 40ec53ecfSStefano Stabellini #include <asm/ptrace.h> 585323a99SIan Campbell #include <asm/atomic.h> 60ec53ecfSStefano Stabellini 70ec53ecfSStefano Stabellini enum ipi_vector { 80ec53ecfSStefano Stabellini XEN_PLACEHOLDER_VECTOR, 90ec53ecfSStefano Stabellini 100ec53ecfSStefano Stabellini /* Xen IPIs go here */ 110ec53ecfSStefano Stabellini XEN_NR_IPIS, 120ec53ecfSStefano Stabellini }; 130ec53ecfSStefano Stabellini 140ec53ecfSStefano Stabellini static inline int xen_irqs_disabled(struct pt_regs *regs) 150ec53ecfSStefano Stabellini { 160ec53ecfSStefano Stabellini return raw_irqs_disabled_flags(regs->ARM_cpsr); 170ec53ecfSStefano Stabellini } 180ec53ecfSStefano Stabellini 1985323a99SIan Campbell #define xchg_xen_ulong(ptr, val) atomic64_xchg(container_of((ptr), \ 2085323a99SIan Campbell atomic64_t, \ 2185323a99SIan Campbell counter), (val)) 22c81611c4SIan Campbell 230ec53ecfSStefano Stabellini #endif /* _ASM_ARM_XEN_EVENTS_H */ 24