hw/virtio: Add boilerplate for vhost-user-scmi device

This creates the QEMU side of the vhost-user-scmi device which connects to
the remote daemon.  It is based on code of similar vhost-user devices.

Signed-off-by: Milan Zamazal <mzamazal@redhat.com>
Message-Id: <20230628100524.342666-2-mzamazal@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
Milan Zamazal 2023-06-28 12:05:22 +02:00 committed by Michael S. Tsirkin
parent 31f137e3d6
commit a5dab090e1
5 changed files with 348 additions and 0 deletions

View file

@ -0,0 +1,30 @@
/*
* Vhost-user SCMI virtio device
*
* Copyright (c) 2023 Red Hat, Inc.
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
#ifndef _QEMU_VHOST_USER_SCMI_H
#define _QEMU_VHOST_USER_SCMI_H
#include "hw/virtio/virtio.h"
#include "hw/virtio/vhost.h"
#include "hw/virtio/vhost-user.h"
#define TYPE_VHOST_USER_SCMI "vhost-user-scmi"
OBJECT_DECLARE_SIMPLE_TYPE(VHostUserSCMI, VHOST_USER_SCMI);
struct VHostUserSCMI {
VirtIODevice parent;
CharBackend chardev;
struct vhost_virtqueue *vhost_vqs;
struct vhost_dev vhost_dev;
VhostUserState vhost_user;
VirtQueue *cmd_vq;
VirtQueue *event_vq;
bool connected;
};
#endif /* _QEMU_VHOST_USER_SCMI_H */