diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/xen/events.h | 7 | ||||
-rw-r--r-- | include/xen/hvm.h | 6 | ||||
-rw-r--r-- | include/xen/interface/features.h | 3 |
3 files changed, 16 insertions, 0 deletions
diff --git a/include/xen/events.h b/include/xen/events.h index e68d59a90ca8..a15d93262e30 100644 --- a/include/xen/events.h +++ b/include/xen/events.h | |||
@@ -56,4 +56,11 @@ void xen_poll_irq(int irq); | |||
56 | /* Determine the IRQ which is bound to an event channel */ | 56 | /* Determine the IRQ which is bound to an event channel */ |
57 | unsigned irq_from_evtchn(unsigned int evtchn); | 57 | unsigned irq_from_evtchn(unsigned int evtchn); |
58 | 58 | ||
59 | /* Xen HVM evtchn vector callback */ | ||
60 | extern void xen_hvm_callback_vector(void); | ||
61 | extern int xen_have_vector_callback; | ||
62 | int xen_set_callback_via(uint64_t via); | ||
63 | void xen_evtchn_do_upcall(struct pt_regs *regs); | ||
64 | void xen_hvm_evtchn_do_upcall(void); | ||
65 | |||
59 | #endif /* _XEN_EVENTS_H */ | 66 | #endif /* _XEN_EVENTS_H */ |
diff --git a/include/xen/hvm.h b/include/xen/hvm.h index 5dfe8fb86e67..b193fa2f9fdd 100644 --- a/include/xen/hvm.h +++ b/include/xen/hvm.h | |||
@@ -3,6 +3,7 @@ | |||
3 | #define XEN_HVM_H__ | 3 | #define XEN_HVM_H__ |
4 | 4 | ||
5 | #include <xen/interface/hvm/params.h> | 5 | #include <xen/interface/hvm/params.h> |
6 | #include <asm/xen/hypercall.h> | ||
6 | 7 | ||
7 | static inline int hvm_get_parameter(int idx, uint64_t *value) | 8 | static inline int hvm_get_parameter(int idx, uint64_t *value) |
8 | { | 9 | { |
@@ -21,4 +22,9 @@ static inline int hvm_get_parameter(int idx, uint64_t *value) | |||
21 | return r; | 22 | return r; |
22 | } | 23 | } |
23 | 24 | ||
25 | #define HVM_CALLBACK_VIA_TYPE_VECTOR 0x2 | ||
26 | #define HVM_CALLBACK_VIA_TYPE_SHIFT 56 | ||
27 | #define HVM_CALLBACK_VECTOR(x) (((uint64_t)HVM_CALLBACK_VIA_TYPE_VECTOR)<<\ | ||
28 | HVM_CALLBACK_VIA_TYPE_SHIFT | (x)) | ||
29 | |||
24 | #endif /* XEN_HVM_H__ */ | 30 | #endif /* XEN_HVM_H__ */ |
diff --git a/include/xen/interface/features.h b/include/xen/interface/features.h index f51b6413b054..8ab08b91bf6f 100644 --- a/include/xen/interface/features.h +++ b/include/xen/interface/features.h | |||
@@ -41,6 +41,9 @@ | |||
41 | /* x86: Does this Xen host support the MMU_PT_UPDATE_PRESERVE_AD hypercall? */ | 41 | /* x86: Does this Xen host support the MMU_PT_UPDATE_PRESERVE_AD hypercall? */ |
42 | #define XENFEAT_mmu_pt_update_preserve_ad 5 | 42 | #define XENFEAT_mmu_pt_update_preserve_ad 5 |
43 | 43 | ||
44 | /* x86: Does this Xen host support the HVM callback vector type? */ | ||
45 | #define XENFEAT_hvm_callback_vector 8 | ||
46 | |||
44 | #define XENFEAT_NR_SUBMAPS 1 | 47 | #define XENFEAT_NR_SUBMAPS 1 |
45 | 48 | ||
46 | #endif /* __XEN_PUBLIC_FEATURES_H__ */ | 49 | #endif /* __XEN_PUBLIC_FEATURES_H__ */ |