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; 24*e1db61b8SDavid Woodhouse struct evtchn_alloc_unbound; 254858ba20SDavid Woodhouse int xen_evtchn_status_op(struct evtchn_status *status); 2683eb5811SDavid Woodhouse int xen_evtchn_close_op(struct evtchn_close *close); 27190cc3c0SDavid Woodhouse int xen_evtchn_unmask_op(struct evtchn_unmask *unmask); 28c723d4c1SDavid Woodhouse int xen_evtchn_bind_virq_op(struct evtchn_bind_virq *virq); 29f5417856SDavid Woodhouse int xen_evtchn_bind_ipi_op(struct evtchn_bind_ipi *ipi); 30cf7679abSDavid Woodhouse int xen_evtchn_send_op(struct evtchn_send *send); 31*e1db61b8SDavid Woodhouse int xen_evtchn_alloc_unbound_op(struct evtchn_alloc_unbound *alloc); 324858ba20SDavid Woodhouse 3391cce756SDavid Woodhouse #endif /* QEMU_XEN_EVTCHN_H */ 34