191cce756SDavid Woodhouse /* 291cce756SDavid Woodhouse * QEMU Xen emulation: Event channel support 391cce756SDavid Woodhouse * 491cce756SDavid Woodhouse * Copyright © 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. 591cce756SDavid Woodhouse * 691cce756SDavid Woodhouse * Authors: David Woodhouse <dwmw2@infradead.org> 791cce756SDavid Woodhouse * 891cce756SDavid Woodhouse * This work is licensed under the terms of the GNU GPL, version 2 or later. 991cce756SDavid Woodhouse * See the COPYING file in the top-level directory. 1091cce756SDavid Woodhouse */ 1191cce756SDavid Woodhouse 1291cce756SDavid Woodhouse #ifndef QEMU_XEN_EVTCHN_H 1391cce756SDavid Woodhouse #define QEMU_XEN_EVTCHN_H 1491cce756SDavid Woodhouse 1591cce756SDavid Woodhouse void xen_evtchn_create(void); 1691cce756SDavid Woodhouse int xen_evtchn_set_callback_param(uint64_t param); 1791cce756SDavid Woodhouse 184858ba20SDavid Woodhouse struct evtchn_status; 1983eb5811SDavid Woodhouse struct evtchn_close; 20190cc3c0SDavid Woodhouse struct evtchn_unmask; 21c723d4c1SDavid Woodhouse struct evtchn_bind_virq; 22f5417856SDavid Woodhouse struct evtchn_bind_ipi; 23cf7679abSDavid Woodhouse struct evtchn_send; 24e1db61b8SDavid Woodhouse struct evtchn_alloc_unbound; 2584327881SDavid Woodhouse struct evtchn_bind_interdomain; 26*30667046SDavid Woodhouse struct evtchn_bind_vcpu; 274858ba20SDavid Woodhouse int xen_evtchn_status_op(struct evtchn_status *status); 2883eb5811SDavid Woodhouse int xen_evtchn_close_op(struct evtchn_close *close); 29190cc3c0SDavid Woodhouse int xen_evtchn_unmask_op(struct evtchn_unmask *unmask); 30c723d4c1SDavid Woodhouse int xen_evtchn_bind_virq_op(struct evtchn_bind_virq *virq); 31f5417856SDavid Woodhouse int xen_evtchn_bind_ipi_op(struct evtchn_bind_ipi *ipi); 32cf7679abSDavid Woodhouse int xen_evtchn_send_op(struct evtchn_send *send); 33e1db61b8SDavid Woodhouse int xen_evtchn_alloc_unbound_op(struct evtchn_alloc_unbound *alloc); 3484327881SDavid Woodhouse int xen_evtchn_bind_interdomain_op(struct evtchn_bind_interdomain *interdomain); 35*30667046SDavid Woodhouse int xen_evtchn_bind_vcpu_op(struct evtchn_bind_vcpu *vcpu); 364858ba20SDavid Woodhouse 3791cce756SDavid Woodhouse #endif /* QEMU_XEN_EVTCHN_H */ 38