mirror of https://gitee.com/openkylin/qemu.git
virtio-gpu-virgl: Add support for virgl video acceleration
Signed-off-by: Feng Jiang <jiangfeng@kylinos.cn>
This commit is contained in:
parent
8c9efa53c0
commit
d50a8c9e99
|
@ -14,6 +14,7 @@
|
|||
#include "qemu/osdep.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "qemu/iov.h"
|
||||
#include "qemu/drm.h"
|
||||
#include "trace.h"
|
||||
#include "hw/virtio/virtio.h"
|
||||
#include "hw/virtio/virtio-gpu.h"
|
||||
|
@ -563,12 +564,18 @@ static int virgl_make_context_current(void *opaque, int scanout_idx,
|
|||
qctx);
|
||||
}
|
||||
|
||||
static int virgl_get_drm_fd(void *opaque)
|
||||
{
|
||||
return qemu_drm_rendernode_open(NULL);
|
||||
}
|
||||
|
||||
static struct virgl_renderer_callbacks virtio_gpu_3d_cbs = {
|
||||
.version = 1,
|
||||
.write_fence = virgl_write_fence,
|
||||
.create_gl_context = virgl_create_context,
|
||||
.destroy_gl_context = virgl_destroy_context,
|
||||
.make_current = virgl_make_context_current,
|
||||
.get_drm_fd = virgl_get_drm_fd,
|
||||
};
|
||||
|
||||
static void virtio_gpu_print_stats(void *opaque)
|
||||
|
@ -638,6 +645,7 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
|
|||
flags |= VIRGL_RENDERER_D3D11_SHARE_TEXTURE;
|
||||
}
|
||||
#endif
|
||||
flags |= VIRGL_RENDERER_USE_VIDEO;
|
||||
|
||||
ret = virgl_renderer_init(g, flags, &virtio_gpu_3d_cbs);
|
||||
if (ret != 0) {
|
||||
|
|
Loading…
Reference in New Issue