1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 29f54ad66SStefano Stabellini #ifndef _ASM_ARM64_XEN_EVENTS_H 39f54ad66SStefano Stabellini #define _ASM_ARM64_XEN_EVENTS_H 49f54ad66SStefano Stabellini 59f54ad66SStefano Stabellini #include <asm/ptrace.h> 69f54ad66SStefano Stabellini #include <asm/atomic.h> 79f54ad66SStefano Stabellini 89f54ad66SStefano Stabellini enum ipi_vector { 99f54ad66SStefano Stabellini XEN_PLACEHOLDER_VECTOR, 109f54ad66SStefano Stabellini 119f54ad66SStefano Stabellini /* Xen IPIs go here */ 129f54ad66SStefano Stabellini XEN_NR_IPIS, 139f54ad66SStefano Stabellini }; 149f54ad66SStefano Stabellini xen_irqs_disabled(struct pt_regs * regs)159f54ad66SStefano Stabellinistatic inline int xen_irqs_disabled(struct pt_regs *regs) 169f54ad66SStefano Stabellini { 17b0506a8bSJulien Thierry return !interrupts_enabled(regs); 189f54ad66SStefano Stabellini } 199f54ad66SStefano Stabellini 209f54ad66SStefano Stabellini #define xchg_xen_ulong(ptr, val) xchg((ptr), (val)) 219f54ad66SStefano Stabellini 224a5b6946SJulien Grall /* Rebind event channel is supported by default */ xen_support_evtchn_rebind(void)234a5b6946SJulien Grallstatic inline bool xen_support_evtchn_rebind(void) 244a5b6946SJulien Grall { 254a5b6946SJulien Grall return true; 264a5b6946SJulien Grall } 274a5b6946SJulien Grall 289f54ad66SStefano Stabellini #endif /* _ASM_ARM64_XEN_EVENTS_H */ 29