1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 22fbadc30SMarc Zyngier #ifndef _ASM_ARM_XEN_HYPERVISOR_H 32fbadc30SMarc Zyngier #define _ASM_ARM_XEN_HYPERVISOR_H 42fbadc30SMarc Zyngier 52fbadc30SMarc Zyngier #include <linux/init.h> 62fbadc30SMarc Zyngier 72fbadc30SMarc Zyngier extern struct shared_info *HYPERVISOR_shared_info; 82fbadc30SMarc Zyngier extern struct start_info *xen_start_info; 92fbadc30SMarc Zyngier 102fbadc30SMarc Zyngier /* Lazy mode for batching updates / context switch */ 112fbadc30SMarc Zyngier enum paravirt_lazy_mode { 122fbadc30SMarc Zyngier PARAVIRT_LAZY_NONE, 132fbadc30SMarc Zyngier PARAVIRT_LAZY_MMU, 142fbadc30SMarc Zyngier PARAVIRT_LAZY_CPU, 152fbadc30SMarc Zyngier }; 162fbadc30SMarc Zyngier 172fbadc30SMarc Zyngier static inline enum paravirt_lazy_mode paravirt_get_lazy_mode(void) 182fbadc30SMarc Zyngier { 192fbadc30SMarc Zyngier return PARAVIRT_LAZY_NONE; 202fbadc30SMarc Zyngier } 212fbadc30SMarc Zyngier 225299709dSBart Van Assche extern const struct dma_map_ops *xen_dma_ops; 232fbadc30SMarc Zyngier 242fbadc30SMarc Zyngier #ifdef CONFIG_XEN 252fbadc30SMarc Zyngier void __init xen_early_init(void); 262fbadc30SMarc Zyngier #else 272fbadc30SMarc Zyngier static inline void xen_early_init(void) { return; } 282fbadc30SMarc Zyngier #endif 292fbadc30SMarc Zyngier 302fbadc30SMarc Zyngier #ifdef CONFIG_HOTPLUG_CPU 312fbadc30SMarc Zyngier static inline void xen_arch_register_cpu(int num) 322fbadc30SMarc Zyngier { 332fbadc30SMarc Zyngier } 342fbadc30SMarc Zyngier 352fbadc30SMarc Zyngier static inline void xen_arch_unregister_cpu(int num) 362fbadc30SMarc Zyngier { 372fbadc30SMarc Zyngier } 382fbadc30SMarc Zyngier #endif 392fbadc30SMarc Zyngier 402fbadc30SMarc Zyngier #endif /* _ASM_ARM_XEN_HYPERVISOR_H */ 41