xref: /openbmc/linux/arch/x86/include/asm/mshyperv.h (revision cf910e83ae23692fdeefc7e506e504c4c468d38a)
1e08cae41SH. Peter Anvin #ifndef _ASM_X86_MSHYPER_H
2e08cae41SH. Peter Anvin #define _ASM_X86_MSHYPER_H
3a2a47c6cSKy Srinivasan 
4e08cae41SH. Peter Anvin #include <linux/types.h>
5e08cae41SH. Peter Anvin #include <asm/hyperv.h>
6e08cae41SH. Peter Anvin 
7e08cae41SH. Peter Anvin struct ms_hyperv_info {
8e08cae41SH. Peter Anvin 	u32 features;
9e08cae41SH. Peter Anvin 	u32 hints;
10e08cae41SH. Peter Anvin };
11e08cae41SH. Peter Anvin 
12e08cae41SH. Peter Anvin extern struct ms_hyperv_info ms_hyperv;
13a2a47c6cSKy Srinivasan 
14bc2b0331SK. Y. Srinivasan void hyperv_callback_vector(void);
15*cf910e83SSeiji Aguchi #ifdef CONFIG_TRACING
16*cf910e83SSeiji Aguchi #define trace_hyperv_callback_vector hyperv_callback_vector
17*cf910e83SSeiji Aguchi #endif
18bc2b0331SK. Y. Srinivasan void hyperv_vector_handler(struct pt_regs *regs);
19bc2b0331SK. Y. Srinivasan void hv_register_vmbus_handler(int irq, irq_handler_t handler);
20bc2b0331SK. Y. Srinivasan 
21a2a47c6cSKy Srinivasan #endif
22