xref: /openbmc/qemu/include/hw/virtio/vhost-vdpa.h (revision b1522296)
1 /*
2  * vhost-vdpa.h
3  *
4  * Copyright(c) 2017-2018 Intel Corporation.
5  * Copyright(c) 2020 Red Hat, Inc.
6  *
7  * This work is licensed under the terms of the GNU GPL, version 2 or later.
8  * See the COPYING file in the top-level directory.
9  *
10  */
11 
12 #ifndef HW_VIRTIO_VHOST_VDPA_H
13 #define HW_VIRTIO_VHOST_VDPA_H
14 
15 #include "hw/virtio/virtio.h"
16 #include "standard-headers/linux/vhost_types.h"
17 
18 typedef struct VhostVDPAHostNotifier {
19     MemoryRegion mr;
20     void *addr;
21 } VhostVDPAHostNotifier;
22 
23 typedef struct vhost_vdpa {
24     int device_fd;
25     int index;
26     uint32_t msg_type;
27     bool iotlb_batch_begin_sent;
28     MemoryListener listener;
29     struct vhost_vdpa_iova_range iova_range;
30     struct vhost_dev *dev;
31     VhostVDPAHostNotifier notifier[VIRTIO_QUEUE_MAX];
32 } VhostVDPA;
33 
34 #endif
35