1 #ifndef __VKI_XEN_EVTCHN_H 2 #define __VKI_XEN_EVTCHN_H 3 4 #define VKI_XEN_EVTCHNOP_bind_interdomain 0 5 #define VKI_XEN_EVTCHNOP_bind_virq 1 6 #define VKI_XEN_EVTCHNOP_bind_pirq 2 7 #define VKI_XEN_EVTCHNOP_close 3 8 #define VKI_XEN_EVTCHNOP_send 4 9 #define VKI_XEN_EVTCHNOP_status 5 10 #define VKI_XEN_EVTCHNOP_alloc_unbound 6 11 #define VKI_XEN_EVTCHNOP_bind_ipi 7 12 #define VKI_XEN_EVTCHNOP_bind_vcpu 8 13 #define VKI_XEN_EVTCHNOP_unmask 9 14 #define VKI_XEN_EVTCHNOP_reset 10 15 16 typedef vki_uint32_t vki_xen_evtchn_port_t; 17 DEFINE_VKI_XEN_GUEST_HANDLE(vki_xen_evtchn_port_t); 18 19 struct vki_xen_evtchn_alloc_unbound { 20 /* IN parameters */ 21 vki_xen_domid_t dom, remote_dom; 22 /* OUT parameters */ 23 vki_xen_evtchn_port_t port; 24 }; 25 26 struct vki_xen_evtchn_op { 27 vki_uint32_t cmd; /* enum event_channel_op */ 28 union { 29 struct vki_xen_evtchn_alloc_unbound alloc_unbound; 30 //struct vki_xen_evtchn_bind_interdomain bind_interdomain; 31 //struct vki_xen_evtchn_bind_virq bind_virq; 32 //struct vki_xen_evtchn_bind_pirq bind_pirq; 33 //struct vki_xen_evtchn_bind_ipi bind_ipi; 34 //struct vki_xen_evtchn_close close; 35 //struct vki_xen_evtchn_send send; 36 //struct vki_xen_evtchn_status status; 37 //struct vki_xen_evtchn_bind_vcpu bind_vcpu; 38 //struct vki_xen_evtchn_unmask unmask; 39 } u; 40 }; 41 42 #endif // __VKI_XEN_EVTCHN_H 43 44 /*--------------------------------------------------------------------*/ 45 /*--- end ---*/ 46 /*--------------------------------------------------------------------*/ 47