29#ifndef __XEN_PUBLIC_XEN_H__ 
   30#define __XEN_PUBLIC_XEN_H__ 
   32#if defined(CONFIG_ARM64) 
   35#error "Unsupported architecture" 
   41__DEFINE_XEN_GUEST_HANDLE(uchar, 
unsigned char);
 
   43__DEFINE_XEN_GUEST_HANDLE(uint,  
unsigned int);
 
   44#if __XEN_INTERFACE_VERSION__ < 0x00040300 
   46__DEFINE_XEN_GUEST_HANDLE(ulong, 
unsigned long);
 
   56#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 
   57#define XEN_FLEX_ARRAY_DIM 
   58#elif defined(__GNUC__) 
   59#define XEN_FLEX_ARRAY_DIM 0 
   61#define XEN_FLEX_ARRAY_DIM 1  
   65#define __xen_mk_uint(x)        x ## U 
   66#define __xen_mk_ulong(x)       x ## UL 
   67#ifndef __xen_mk_ullong 
   68#define __xen_mk_ullong(x)      x ## ULL 
   70#define xen_mk_uint(x)          __xen_mk_uint(x) 
   71#define xen_mk_ulong(x)         __xen_mk_ulong(x) 
   72#define xen_mk_ullong(x)        __xen_mk_ullong(x) 
   77#define xen_mk_uint(x)          x 
   78#define xen_mk_ulong(x)         x 
   79#define xen_mk_ullong(x)        x 
   91#define __HYPERVISOR_set_trap_table                     0 
   92#define __HYPERVISOR_mmu_update                         1 
   93#define __HYPERVISOR_set_gdt                            2 
   94#define __HYPERVISOR_stack_switch                       3 
   95#define __HYPERVISOR_set_callbacks                      4 
   96#define __HYPERVISOR_fpu_taskswitch                     5 
   99#define __HYPERVISOR_sched_op_compat                    6 
  100#define __HYPERVISOR_platform_op                        7 
  101#define __HYPERVISOR_set_debugreg                       8 
  102#define __HYPERVISOR_get_debugreg                       9 
  103#define __HYPERVISOR_update_descriptor                  10 
  104#define __HYPERVISOR_memory_op                          12 
  105#define __HYPERVISOR_multicall                          13 
  106#define __HYPERVISOR_update_va_mapping                  14 
  107#define __HYPERVISOR_set_timer_op                       15 
  110#define __HYPERVISOR_event_channel_op_compat            16 
  111#define __HYPERVISOR_xen_version                        17 
  112#define __HYPERVISOR_console_io                         18 
  115#define __HYPERVISOR_physdev_op_compat                  19 
  116#define __HYPERVISOR_grant_table_op                     20 
  117#define __HYPERVISOR_vm_assist                          21 
  118#define __HYPERVISOR_update_va_mapping_otherdomain      22 
  121#define __HYPERVISOR_iret                               23 
  122#define __HYPERVISOR_vcpu_op                            24 
  125#define __HYPERVISOR_set_segment_base                   25 
  126#define __HYPERVISOR_mmuext_op                          26 
  127#define __HYPERVISOR_xsm_op                             27 
  128#define __HYPERVISOR_nmi_op                             28 
  129#define __HYPERVISOR_sched_op                           29 
  130#define __HYPERVISOR_callback_op                        30 
  131#define __HYPERVISOR_xenoprof_op                        31 
  132#define __HYPERVISOR_event_channel_op                   32 
  133#define __HYPERVISOR_physdev_op                         33 
  134#define __HYPERVISOR_hvm_op                             34 
  135#define __HYPERVISOR_sysctl                             35 
  136#define __HYPERVISOR_domctl                             36 
  137#define __HYPERVISOR_kexec_op                           37 
  138#define __HYPERVISOR_tmem_op                            38 
  139#define __HYPERVISOR_argo_op                            39 
  140#define __HYPERVISOR_xenpmu_op                          40 
  141#define __HYPERVISOR_dm_op                              41 
  142#define __HYPERVISOR_hypfs_op                           42 
  168#define CONSOLEIO_write         0 
  169#define CONSOLEIO_read          1 
  172#define DOMID_FIRST_RESERVED    xen_mk_uint(0x7FF0) 
  175#define DOMID_SELF              xen_mk_uint(0x7FF0) 
  188#define DOMID_IO                xen_mk_uint(0x7FF1) 
  199#define DOMID_XEN               xen_mk_uint(0x7FF2) 
  204#define DOMID_COW               xen_mk_uint(0x7FF3) 
  207#define DOMID_INVALID           xen_mk_uint(0x7FF4) 
  210#define DOMID_IDLE              xen_mk_uint(0x7FFF) 
  213#define DOMID_MASK              xen_mk_uint(0x7FFF) 
  219#if __XEN_INTERFACE_VERSION__ < 0x00040400 
  224#define NR_EVENT_CHANNELS EVTCHN_2L_NR_CHANNELS 
  251#if __XEN_INTERFACE_VERSION__ > 0x040600 
 
  260#define XEN_PVCLOCK_TSC_STABLE_BIT      (1 << 0) 
  261#define XEN_PVCLOCK_GUEST_STOPPED       (1 << 1) 
  290#ifdef XEN_HAVE_PV_UPCALL_MASK 
 
  361#if !defined(__i386__) 
  363# define xen_wc_sec_hi wc_sec_hi 
  364#elif !defined(__XEN__) && !defined(__XEN_TOOLS__) 
  365# define xen_wc_sec_hi arch.wc_sec_hi 
 
  377#ifndef int64_aligned_t 
  378#define int64_aligned_t int64_t 
  380#ifndef uint64_aligned_t 
  381#define uint64_aligned_t uint64_t 
  383#ifndef XEN_GUEST_HANDLE_64 
  384#define XEN_GUEST_HANDLE_64(name) XEN_GUEST_HANDLE(name) 
uint64_t xen_pfn_t
Definition arch-arm.h:204
 
#define XEN_LEGACY_MAX_VCPUS
Definition arch-arm.h:212
 
uint64_t xen_ulong_t
Definition arch-arm.h:214
 
flags
Definition parser.h:96
 
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
 
__UINT64_TYPE__ uint64_t
Definition stdint.h:91
 
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
 
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
 
__INT8_TYPE__ int8_t
Definition stdint.h:72
 
Definition arch-arm.h:344
 
Definition arch-arm.h:340
 
uint32_t wc_sec_hi
Definition xen.h:362
 
uint32_t wc_nsec
Definition xen.h:360
 
uint32_t wc_sec
Definition xen.h:359
 
xen_ulong_t evtchn_mask[sizeof(xen_ulong_t) *8]
Definition xen.h:347
 
struct arch_shared_info arch
Definition xen.h:368
 
xen_ulong_t evtchn_pending[sizeof(xen_ulong_t) *8]
Definition xen.h:346
 
uint32_t wc_version
Definition xen.h:358
 
uint8_t pad0
Definition xen.h:293
 
xen_ulong_t evtchn_pending_sel
Definition xen.h:295
 
uint8_t evtchn_upcall_pending
Definition xen.h:289
 
struct arch_vcpu_info arch
Definition xen.h:296
 
vcpu_time_info_t time
Definition xen.h:297
 
uint32_t tsc_to_system_mul
Definition xen.h:249
 
uint32_t pad0
Definition xen.h:239
 
uint64_t tsc_timestamp
Definition xen.h:240
 
uint32_t version
Definition xen.h:238
 
int8_t pad1[3]
Definition xen.h:255
 
uint64_t system_time
Definition xen.h:241
 
int8_t tsc_shift
Definition xen.h:250
 
uint32_t nr_bits
Definition xen.h:390
 
bitmap
Definition xen.h:389
 
DEFINE_XEN_GUEST_HANDLE(void)
 
uint16_t domid_t
Definition xen.h:217
 
uint8_t xen_domain_handle_t[16]
Definition xen.h:375