Revision 1cbdabe2 hw/virtio.h
b/hw/virtio.h | ||
---|---|---|
19 | 19 |
#include "qdev.h" |
20 | 20 |
#include "sysemu.h" |
21 | 21 |
#include "block_int.h" |
22 |
#include "event_notifier.h" |
|
22 | 23 |
|
23 | 24 |
/* from Linux's linux/virtio_config.h */ |
24 | 25 |
|
... | ... | |
89 | 90 |
int (*load_config)(void * opaque, QEMUFile *f); |
90 | 91 |
int (*load_queue)(void * opaque, int n, QEMUFile *f); |
91 | 92 |
unsigned (*get_features)(void * opaque); |
93 |
int (*set_guest_notifier)(void * opaque, int n, bool assigned); |
|
94 |
int (*set_host_notifier)(void * opaque, int n, bool assigned); |
|
92 | 95 |
} VirtIOBindings; |
93 | 96 |
|
94 | 97 |
#define VIRTIO_PCI_QUEUE_MAX 64 |
... | ... | |
181 | 184 |
DEFINE_PROP_BIT("indirect_desc", _state, _field, \ |
182 | 185 |
VIRTIO_RING_F_INDIRECT_DESC, true) |
183 | 186 |
|
184 |
|
|
187 |
target_phys_addr_t virtio_queue_get_desc_addr(VirtIODevice *vdev, int n); |
|
188 |
target_phys_addr_t virtio_queue_get_avail_addr(VirtIODevice *vdev, int n); |
|
189 |
target_phys_addr_t virtio_queue_get_used_addr(VirtIODevice *vdev, int n); |
|
190 |
target_phys_addr_t virtio_queue_get_ring_addr(VirtIODevice *vdev, int n); |
|
191 |
target_phys_addr_t virtio_queue_get_desc_size(VirtIODevice *vdev, int n); |
|
192 |
target_phys_addr_t virtio_queue_get_avail_size(VirtIODevice *vdev, int n); |
|
193 |
target_phys_addr_t virtio_queue_get_used_size(VirtIODevice *vdev, int n); |
|
194 |
target_phys_addr_t virtio_queue_get_ring_size(VirtIODevice *vdev, int n); |
|
195 |
uint16_t virtio_queue_get_last_avail_idx(VirtIODevice *vdev, int n); |
|
196 |
void virtio_queue_set_last_avail_idx(VirtIODevice *vdev, int n, uint16_t idx); |
|
197 |
VirtQueue *virtio_get_queue(VirtIODevice *vdev, int n); |
|
198 |
EventNotifier *virtio_queue_get_guest_notifier(VirtQueue *vq); |
|
199 |
EventNotifier *virtio_queue_get_host_notifier(VirtQueue *vq); |
|
200 |
void virtio_irq(VirtQueue *vq); |
|
185 | 201 |
#endif |
Also available in: Unified diff