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