15fe97d88SStefano Garzarella /* 25fe97d88SStefano Garzarella * Vhost-user vsock virtio device 35fe97d88SStefano Garzarella * 45fe97d88SStefano Garzarella * Copyright 2020 Red Hat, Inc. 55fe97d88SStefano Garzarella * 65fe97d88SStefano Garzarella * This work is licensed under the terms of the GNU GPL, version 2 or 75fe97d88SStefano Garzarella * (at your option) any later version. See the COPYING file in the 85fe97d88SStefano Garzarella * top-level directory. 95fe97d88SStefano Garzarella */ 105fe97d88SStefano Garzarella 115fe97d88SStefano Garzarella #ifndef _QEMU_VHOST_USER_VSOCK_H 125fe97d88SStefano Garzarella #define _QEMU_VHOST_USER_VSOCK_H 135fe97d88SStefano Garzarella 145fe97d88SStefano Garzarella #include "hw/virtio/vhost-vsock-common.h" 155fe97d88SStefano Garzarella #include "hw/virtio/vhost-user.h" 165fe97d88SStefano Garzarella #include "standard-headers/linux/virtio_vsock.h" 17*db1015e9SEduardo Habkost #include "qom/object.h" 185fe97d88SStefano Garzarella 195fe97d88SStefano Garzarella #define TYPE_VHOST_USER_VSOCK "vhost-user-vsock-device" 20*db1015e9SEduardo Habkost typedef struct VHostUserVSock VHostUserVSock; 215fe97d88SStefano Garzarella #define VHOST_USER_VSOCK(obj) \ 225fe97d88SStefano Garzarella OBJECT_CHECK(VHostUserVSock, (obj), TYPE_VHOST_USER_VSOCK) 235fe97d88SStefano Garzarella 245fe97d88SStefano Garzarella typedef struct { 255fe97d88SStefano Garzarella CharBackend chardev; 265fe97d88SStefano Garzarella } VHostUserVSockConf; 275fe97d88SStefano Garzarella 28*db1015e9SEduardo Habkost struct VHostUserVSock { 295fe97d88SStefano Garzarella /*< private >*/ 305fe97d88SStefano Garzarella VHostVSockCommon parent; 315fe97d88SStefano Garzarella VhostUserState vhost_user; 325fe97d88SStefano Garzarella VHostUserVSockConf conf; 335fe97d88SStefano Garzarella struct virtio_vsock_config vsockcfg; 345fe97d88SStefano Garzarella 355fe97d88SStefano Garzarella /*< public >*/ 36*db1015e9SEduardo Habkost }; 375fe97d88SStefano Garzarella 385fe97d88SStefano Garzarella #endif /* _QEMU_VHOST_USER_VSOCK_H */ 39