ui/egl: support multi-plane dmabuf when egl export/import

v2:
  * use new dmabuf API and check length

Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
[ Fix style ]
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20250327025848.46962-5-yuq825@gmail.com>
This commit is contained in:
Qiang Yu 2025-03-27 10:58:46 +08:00 committed by Marc-André Lureau
parent ac70568902
commit 0e15d0b927
4 changed files with 124 additions and 52 deletions

View file

@ -46,8 +46,9 @@ extern int qemu_egl_rn_fd;
extern struct gbm_device *qemu_egl_rn_gbm_dev;
int egl_rendernode_init(const char *rendernode, DisplayGLMode mode);
int egl_get_fd_for_texture(uint32_t tex_id, EGLint *stride, EGLint *fourcc,
EGLuint64KHR *modifier);
bool egl_dmabuf_export_texture(uint32_t tex_id, int *fd, EGLint *offset,
EGLint *stride, EGLint *fourcc, int *num_planes,
EGLuint64KHR *modifier);
void egl_dmabuf_import_texture(QemuDmaBuf *dmabuf);
void egl_dmabuf_release_texture(QemuDmaBuf *dmabuf);