diff options
author | kaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk> | 2006-04-30 09:16:15 +0100 |
---|---|---|
committer | kaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk> | 2006-04-30 09:16:15 +0100 |
commit | 013351bd7ab3e35717e0133b5f44f82efd6a5d28 (patch) | |
tree | 07939fd55c2d3554fa6d89d443d01a1a4427b6fa /xen/include/public/event_channel.h | |
parent | 4fabe234e8d2895bd2f49d43263f3dafb4658695 (diff) | |
download | xen-013351bd7ab3e35717e0133b5f44f82efd6a5d28.tar.gz xen-013351bd7ab3e35717e0133b5f44f82efd6a5d28.tar.bz2 xen-013351bd7ab3e35717e0133b5f44f82efd6a5d28.zip |
Define new event-channel and physdev hypercalls with a more extensible
interface (the legacy hypercalls would break if subcommands with large
argument structures were added, as it would grow the size of the
union of all argument structures).
Also, based on a patch from Kevin Tian, add a new physdev op to
signal EOI for a particular irq.
Signed-off-by: Keir Fraser <keir@xensource.com>
Diffstat (limited to 'xen/include/public/event_channel.h')
-rw-r--r-- | xen/include/public/event_channel.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/xen/include/public/event_channel.h b/xen/include/public/event_channel.h index d79a4bc861..24de420154 100644 --- a/xen/include/public/event_channel.h +++ b/xen/include/public/event_channel.h @@ -9,6 +9,13 @@ #ifndef __XEN_PUBLIC_EVENT_CHANNEL_H__ #define __XEN_PUBLIC_EVENT_CHANNEL_H__ +/* + * Prototype for this hypercall is: + * int event_channel_op(int cmd, void *args) + * @cmd == EVTCHNOP_??? (event-channel operation). + * @args == Operation-specific extra arguments (NULL if none). + */ + typedef uint32_t evtchn_port_t; DEFINE_XEN_GUEST_HANDLE(evtchn_port_t); @@ -181,6 +188,10 @@ typedef struct evtchn_unmask { evtchn_port_t port; } evtchn_unmask_t; +/* + * Argument to event_channel_op_compat() hypercall. Superceded by new + * event_channel_op() hypercall since 0x00030202. + */ typedef struct evtchn_op { uint32_t cmd; /* EVTCHNOP_* */ union { |