H. Peter Anvin | e08cae4 | 2010-05-07 16:57:28 -0700 | [diff] [blame] | 1 | #ifndef _ASM_X86_MSHYPER_H |
| 2 | #define _ASM_X86_MSHYPER_H |
Ky Srinivasan | a2a47c6 | 2010-05-06 12:08:41 -0700 | [diff] [blame] | 3 | |
H. Peter Anvin | e08cae4 | 2010-05-07 16:57:28 -0700 | [diff] [blame] | 4 | #include <linux/types.h> |
Thomas Gleixner | 1aec169 | 2014-02-23 21:40:22 +0000 | [diff] [blame] | 5 | #include <linux/interrupt.h> |
H. Peter Anvin | e08cae4 | 2010-05-07 16:57:28 -0700 | [diff] [blame] | 6 | #include <asm/hyperv.h> |
| 7 | |
| 8 | struct ms_hyperv_info { |
| 9 | u32 features; |
| 10 | u32 hints; |
| 11 | }; |
| 12 | |
| 13 | extern struct ms_hyperv_info ms_hyperv; |
Ky Srinivasan | a2a47c6 | 2010-05-06 12:08:41 -0700 | [diff] [blame] | 14 | |
K. Y. Srinivasan | bc2b033 | 2013-02-03 17:22:39 -0800 | [diff] [blame] | 15 | void hyperv_callback_vector(void); |
Seiji Aguchi | cf910e8 | 2013-06-20 11:46:53 -0400 | [diff] [blame] | 16 | #ifdef CONFIG_TRACING |
| 17 | #define trace_hyperv_callback_vector hyperv_callback_vector |
| 18 | #endif |
K. Y. Srinivasan | bc2b033 | 2013-02-03 17:22:39 -0800 | [diff] [blame] | 19 | void hyperv_vector_handler(struct pt_regs *regs); |
Thomas Gleixner | 76d388c | 2014-03-05 13:42:14 +0100 | [diff] [blame] | 20 | void hv_setup_vmbus_irq(void (*handler)(void)); |
| 21 | void hv_remove_vmbus_irq(void); |
K. Y. Srinivasan | bc2b033 | 2013-02-03 17:22:39 -0800 | [diff] [blame] | 22 | |
Vitaly Kuznetsov | 2517281 | 2015-08-01 16:08:07 -0700 | [diff] [blame^] | 23 | void hv_setup_kexec_handler(void (*handler)(void)); |
| 24 | void hv_remove_kexec_handler(void); |
Ky Srinivasan | a2a47c6 | 2010-05-06 12:08:41 -0700 | [diff] [blame] | 25 | #endif |