[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[QEMU PATCH v5 11/13] virtio-gpu: Support Venus capset
From: |
Huang Rui |
Subject: |
[QEMU PATCH v5 11/13] virtio-gpu: Support Venus capset |
Date: |
Fri, 15 Sep 2023 19:11:28 +0800 |
From: Antonio Caggiano <antonio.caggiano@collabora.com>
Add support for the Venus capset, which enables Vulkan support through
the Venus Vulkan driver for virtio-gpu.
Signed-off-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Signed-off-by: Huang Rui <ray.huang@amd.com>
---
V4 -> V5:
- Send kernel patch to define VIRTIO_GPU_CAPSET_VENUS and will use
another patch to sync up linux headers. (Akihiko)
- https://lore.kernel.org/lkml/20230915105918.3763061-1-ray.huang@amd.com/
hw/display/virtio-gpu-virgl.c | 21 +++++++++++++++++----
1 file changed, 17 insertions(+), 4 deletions(-)
diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c
index 8a017dbeb4..7f95490e90 100644
--- a/hw/display/virtio-gpu-virgl.c
+++ b/hw/display/virtio-gpu-virgl.c
@@ -437,6 +437,11 @@ static void virgl_cmd_get_capset_info(VirtIOGPU *g,
virgl_renderer_get_cap_set(resp.capset_id,
&resp.capset_max_version,
&resp.capset_max_size);
+ } else if (info.capset_index == 2) {
+ resp.capset_id = VIRTIO_GPU_CAPSET_VENUS;
+ virgl_renderer_get_cap_set(resp.capset_id,
+ &resp.capset_max_version,
+ &resp.capset_max_size);
} else {
resp.capset_max_version = 0;
resp.capset_max_size = 0;
@@ -901,10 +906,18 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
int virtio_gpu_virgl_get_num_capsets(VirtIOGPU *g)
{
- uint32_t capset2_max_ver, capset2_max_size;
+ uint32_t capset2_max_ver, capset2_max_size, num_capsets;
+ num_capsets = 1;
+
virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VIRGL2,
- &capset2_max_ver,
- &capset2_max_size);
+ &capset2_max_ver,
+ &capset2_max_size);
+ num_capsets += capset2_max_ver ? 1 : 0;
+
+ virgl_renderer_get_cap_set(VIRTIO_GPU_CAPSET_VENUS,
+ &capset2_max_ver,
+ &capset2_max_size);
+ num_capsets += capset2_max_size ? 1 : 0;
- return capset2_max_ver ? 2 : 1;
+ return num_capsets;
}
--
2.34.1
- Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands, (continued)
Re: [QEMU PATCH v5 09/13] virtio-gpu: Handle resource blob commands, Marc-André Lureau, 2023/09/19
[QEMU PATCH v5 08/13] virtio-gpu: Don't require udmabuf when blobs and virgl are enabled, Huang Rui, 2023/09/15
[QEMU PATCH v5 10/13] virtio-gpu: Resource UUID, Huang Rui, 2023/09/15
[QEMU PATCH v5 11/13] virtio-gpu: Support Venus capset,
Huang Rui <=
[QEMU PATCH v5 12/13] virtio-gpu: Initialize Venus, Huang Rui, 2023/09/15
[QEMU PATCH v5 13/13] virtio-gpu: Enable virglrenderer render server flag for venus, Huang Rui, 2023/09/15