gfxstream + rutabaga prep: added need defintions, fields, and options
This modifies the common virtio-gpu.h file have the fields and defintions needed by gfxstream/rutabaga, by VirtioGpuRutabaga. Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org> Tested-by: Alyssa Ross <hi@alyssa.is> Tested-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org> Tested-by: Akihiko Odaki <akihiko.odaki@daynix.com> Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org> Reviewed-by: Antonio Caggiano <quic_acaggian@quicinc.com> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
This commit is contained in:
parent
49a8b65932
commit
ac8767c743
@ -38,6 +38,9 @@ OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPUGL, VIRTIO_GPU_GL)
|
||||
#define TYPE_VHOST_USER_GPU "vhost-user-gpu"
|
||||
OBJECT_DECLARE_SIMPLE_TYPE(VhostUserGPU, VHOST_USER_GPU)
|
||||
|
||||
#define TYPE_VIRTIO_GPU_RUTABAGA "virtio-gpu-rutabaga-device"
|
||||
OBJECT_DECLARE_SIMPLE_TYPE(VirtIOGPURutabaga, VIRTIO_GPU_RUTABAGA)
|
||||
|
||||
struct virtio_gpu_simple_resource {
|
||||
uint32_t resource_id;
|
||||
uint32_t width;
|
||||
@ -94,6 +97,7 @@ enum virtio_gpu_base_conf_flags {
|
||||
VIRTIO_GPU_FLAG_DMABUF_ENABLED,
|
||||
VIRTIO_GPU_FLAG_BLOB_ENABLED,
|
||||
VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED,
|
||||
VIRTIO_GPU_FLAG_RUTABAGA_ENABLED,
|
||||
};
|
||||
|
||||
#define virtio_gpu_virgl_enabled(_cfg) \
|
||||
@ -108,6 +112,8 @@ enum virtio_gpu_base_conf_flags {
|
||||
(_cfg.flags & (1 << VIRTIO_GPU_FLAG_BLOB_ENABLED))
|
||||
#define virtio_gpu_context_init_enabled(_cfg) \
|
||||
(_cfg.flags & (1 << VIRTIO_GPU_FLAG_CONTEXT_INIT_ENABLED))
|
||||
#define virtio_gpu_rutabaga_enabled(_cfg) \
|
||||
(_cfg.flags & (1 << VIRTIO_GPU_FLAG_RUTABAGA_ENABLED))
|
||||
#define virtio_gpu_hostmem_enabled(_cfg) \
|
||||
(_cfg.hostmem > 0)
|
||||
|
||||
@ -232,6 +238,27 @@ struct VhostUserGPU {
|
||||
bool backend_blocked;
|
||||
};
|
||||
|
||||
#define MAX_SLOTS 4096
|
||||
|
||||
struct MemoryRegionInfo {
|
||||
int used;
|
||||
MemoryRegion mr;
|
||||
uint32_t resource_id;
|
||||
};
|
||||
|
||||
struct rutabaga;
|
||||
|
||||
struct VirtIOGPURutabaga {
|
||||
VirtIOGPU parent_obj;
|
||||
struct MemoryRegionInfo memory_regions[MAX_SLOTS];
|
||||
uint64_t capset_mask;
|
||||
char *wayland_socket_path;
|
||||
char *wsi;
|
||||
bool headless;
|
||||
uint32_t num_capsets;
|
||||
struct rutabaga *rutabaga;
|
||||
};
|
||||
|
||||
#define VIRTIO_GPU_FILL_CMD(out) do { \
|
||||
size_t s; \
|
||||
s = iov_to_buf(cmd->elem.out_sg, cmd->elem.out_num, 0, \
|
||||
|
Loading…
Reference in New Issue
Block a user