Blame view

include/xen/hvm.h 695 Bytes
18f19aa62   Jeremy Fitzhardinge   xen: Add support ...
1
2
3
4
5
  /* Simple wrappers around HVM functions */
  #ifndef XEN_HVM_H__
  #define XEN_HVM_H__
  
  #include <xen/interface/hvm/params.h>
38e20b07e   Sheng Yang   x86/xen: event ch...
6
  #include <asm/xen/hypercall.h>
18f19aa62   Jeremy Fitzhardinge   xen: Add support ...
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  
  static inline int hvm_get_parameter(int idx, uint64_t *value)
  {
  	struct xen_hvm_param xhv;
  	int r;
  
  	xhv.domid = DOMID_SELF;
  	xhv.index = idx;
  	r = HYPERVISOR_hvm_op(HVMOP_get_param, &xhv);
  	if (r < 0) {
  		printk(KERN_ERR "Cannot get hvm parameter %d: %d!
  ",
  			idx, r);
  		return r;
  	}
  	*value = xhv.value;
  	return r;
  }
38e20b07e   Sheng Yang   x86/xen: event ch...
25
26
27
28
  #define HVM_CALLBACK_VIA_TYPE_VECTOR 0x2
  #define HVM_CALLBACK_VIA_TYPE_SHIFT 56
  #define HVM_CALLBACK_VECTOR(x) (((uint64_t)HVM_CALLBACK_VIA_TYPE_VECTOR)<<\
  		HVM_CALLBACK_VIA_TYPE_SHIFT | (x))
18f19aa62   Jeremy Fitzhardinge   xen: Add support ...
29
  #endif /* XEN_HVM_H__ */