Lines Matching refs:VuDev

233 typedef struct VuDev VuDev;  typedef
235 typedef uint64_t (*vu_get_features_cb) (VuDev *dev);
236 typedef void (*vu_set_features_cb) (VuDev *dev, uint64_t features);
237 typedef int (*vu_process_msg_cb) (VuDev *dev, VhostUserMsg *vmsg,
239 typedef bool (*vu_read_msg_cb) (VuDev *dev, int sock, VhostUserMsg *vmsg);
240 typedef void (*vu_queue_set_started_cb) (VuDev *dev, int qidx, bool started);
241 typedef bool (*vu_queue_is_processed_in_order_cb) (VuDev *dev, int qidx);
242 typedef int (*vu_get_config_cb) (VuDev *dev, uint8_t *config, uint32_t len);
243 typedef int (*vu_set_config_cb) (VuDev *dev, const uint8_t *data,
246 typedef int (*vu_get_shared_object_cb) (VuDev *dev, const unsigned char *uuid);
277 typedef void (*vu_queue_handler_cb) (VuDev *dev, int qidx);
384 typedef void (*vu_panic_cb) (VuDev *dev, const char *err);
385 typedef void (*vu_watch_cb) (VuDev *dev, int condition, void *data);
386 typedef void (*vu_set_watch_cb) (VuDev *dev, int fd, int condition,
388 typedef void (*vu_remove_watch_cb) (VuDev *dev, int fd);
396 struct VuDev { struct
474 bool vu_init(VuDev *dev,
490 void vu_deinit(VuDev *dev);
509 bool vu_dispatch(VuDev *dev);
519 void *vu_gpa_to_va(VuDev *dev, uint64_t *plen, uint64_t guest_addr);
528 VuVirtq *vu_get_queue(VuDev *dev, int qidx);
540 void vu_set_queue_handler(VuDev *dev, VuVirtq *vq,
555 bool vu_set_queue_host_notifier(VuDev *dev, VuVirtq *vq, int fd,
569 bool vu_lookup_shared_object(VuDev *dev, unsigned char uuid[UUID_LEN],
582 bool vu_add_shared_object(VuDev *dev, unsigned char uuid[UUID_LEN]);
594 bool vu_rm_shared_object(VuDev *dev, unsigned char uuid[UUID_LEN]);
604 void vu_queue_set_notification(VuDev *dev, VuVirtq *vq, int enable);
613 bool vu_queue_enabled(VuDev *dev, VuVirtq *vq);
622 bool vu_queue_started(const VuDev *dev, const VuVirtq *vq);
631 bool vu_queue_empty(VuDev *dev, VuVirtq *vq);
640 void vu_queue_notify(VuDev *dev, VuVirtq *vq);
642 void vu_config_change_msg(VuDev *dev);
652 void vu_queue_notify_sync(VuDev *dev, VuVirtq *vq);
663 void *vu_queue_pop(VuDev *dev, VuVirtq *vq, size_t sz);
676 void vu_queue_unpop(VuDev *dev, VuVirtq *vq, VuVirtqElement *elem,
691 bool vu_queue_rewind(VuDev *dev, VuVirtq *vq, unsigned int num);
703 void vu_queue_fill(VuDev *dev, VuVirtq *vq,
716 void vu_queue_push(VuDev *dev, VuVirtq *vq,
728 void vu_queue_flush(VuDev *dev, VuVirtq *vq, unsigned int num);
741 void vu_queue_get_avail_bytes(VuDev *vdev, VuVirtq *vq, unsigned int *in_bytes,
754 bool vu_queue_avail_bytes(VuDev *dev, VuVirtq *vq, unsigned int in_bytes,