X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fvirtio%2Fvirtio_user%2Fvhost.h;h=2e71995a79a36286a25bd4eefdd142dda7baed1e;hb=844e4683718742b28a7708cc00f7ee7246f92d7b;hp=83a85cc6f180f74160e1755a9e13285bb49d1e82;hpb=520dd9923b351ea7a3b7476d3a04542ab0d9ad0c;p=dpdk.git diff --git a/drivers/net/virtio/virtio_user/vhost.h b/drivers/net/virtio/virtio_user/vhost.h index 83a85cc6f1..2e71995a79 100644 --- a/drivers/net/virtio/virtio_user/vhost.h +++ b/drivers/net/virtio/virtio_user/vhost.h @@ -2,8 +2,8 @@ * Copyright(c) 2010-2016 Intel Corporation */ -#ifndef _VHOST_NET_USER_H -#define _VHOST_NET_USER_H +#ifndef _VIRTIO_USER_VHOST_H +#define _VIRTIO_USER_VHOST_H #include #include @@ -44,6 +44,23 @@ struct vhost_vring_addr { uint64_t log_guest_addr; }; +#ifndef VHOST_USER_F_PROTOCOL_FEATURES +#define VHOST_USER_F_PROTOCOL_FEATURES 30 +#endif + +/** Protocol features. */ +#ifndef VHOST_USER_PROTOCOL_F_MQ +#define VHOST_USER_PROTOCOL_F_MQ 0 +#endif + +#ifndef VHOST_USER_PROTOCOL_F_REPLY_ACK +#define VHOST_USER_PROTOCOL_F_REPLY_ACK 3 +#endif + +#ifndef VHOST_USER_PROTOCOL_F_STATUS +#define VHOST_USER_PROTOCOL_F_STATUS 16 +#endif + enum vhost_user_request { VHOST_USER_NONE = 0, VHOST_USER_GET_FEATURES = 1, @@ -64,10 +81,12 @@ enum vhost_user_request { VHOST_USER_SET_PROTOCOL_FEATURES = 16, VHOST_USER_GET_QUEUE_NUM = 17, VHOST_USER_SET_VRING_ENABLE = 18, + VHOST_USER_SET_STATUS = 39, + VHOST_USER_GET_STATUS = 40, VHOST_USER_MAX }; -const char * const vhost_msg_strings[VHOST_USER_MAX]; +extern const char * const vhost_msg_strings[VHOST_USER_MAX]; struct vhost_memory_region { uint64_t guest_phys_addr; @@ -86,6 +105,10 @@ struct virtio_user_backend_ops { int (*enable_qp)(struct virtio_user_dev *dev, uint16_t pair_idx, int enable); + int (*dma_map)(struct virtio_user_dev *dev, void *addr, + uint64_t iova, size_t len); + int (*dma_unmap)(struct virtio_user_dev *dev, void *addr, + uint64_t iova, size_t len); }; extern struct virtio_user_backend_ops virtio_ops_user;