xref: /openbmc/linux/include/xen/arm/hypervisor.h (revision b2441318)
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