xref: /openbmc/qemu/hw/block/dataplane/xen-block.h (revision e7bbc9b1)
1 /*
2  * Copyright (c) 2018  Citrix Systems Inc.
3  *
4  * This work is licensed under the terms of the GNU GPL, version 2 or later.
5  * See the COPYING file in the top-level directory.
6  */
7 
8 #ifndef HW_BLOCK_DATAPLANE_XEN_BLOCK_H
9 #define HW_BLOCK_DATAPLANE_XEN_BLOCK_H
10 
11 #include "hw/block/block.h"
12 #include "hw/xen/xen-bus.h"
13 #include "sysemu/iothread.h"
14 
15 typedef struct XenBlockDataPlane XenBlockDataPlane;
16 
17 XenBlockDataPlane *xen_block_dataplane_create(XenDevice *xendev,
18                                               BlockConf *conf,
19                                               IOThread *iothread);
20 void xen_block_dataplane_destroy(XenBlockDataPlane *dataplane);
21 void xen_block_dataplane_start(XenBlockDataPlane *dataplane,
22                                const unsigned int ring_ref[],
23                                unsigned int nr_ring_ref,
24                                unsigned int event_channel,
25                                unsigned int protocol,
26                                Error **errp);
27 void xen_block_dataplane_stop(XenBlockDataPlane *dataplane);
28 
29 #endif /* HW_BLOCK_DATAPLANE_XEN_BLOCK_H */
30