summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonbum Ko <joonbum.ko@samsung.com>2020-03-18 19:40:59 +0900
committerXuelian Bai <xuelian.bai@samsung.com>2023-02-21 14:32:47 +0800
commitc701a6bef859974f562e3ab5dcea6edac5a0acb5 (patch)
treeb2e2da2d244ef9391dd446b0c7b8b108fc661ac1
parent36f16da7728cce997fa6b39e7370e00e1b084aa8 (diff)
downloadmesa-c701a6bef859974f562e3ab5dcea6edac5a0acb5.tar.gz
mesa-c701a6bef859974f562e3ab5dcea6edac5a0acb5.tar.bz2
mesa-c701a6bef859974f562e3ab5dcea6edac5a0acb5.zip
Fix to use TPL_BACKEND_WAYLAND_THREAD.
- It is a valid backend only for wayland clients. Change-Id: Ifea5a5b5bd03074f267c4be02d325ed544840753 Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
-rwxr-xr-xsrc/egl/drivers/dri2/platform_tizen.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/egl/drivers/dri2/platform_tizen.c b/src/egl/drivers/dri2/platform_tizen.c
index acc549a7d4b..01d6d870b12 100755
--- a/src/egl/drivers/dri2/platform_tizen.c
+++ b/src/egl/drivers/dri2/platform_tizen.c
@@ -1423,6 +1423,7 @@ dri2_initialize_tizen(_EGLDisplay *disp)
_EGLDevice *dev;
struct dri2_egl_display *dri2_dpy;
tpl_display_t *tpl_display = NULL;
+ tpl_backend_type_t tpl_backend = TPL_BACKEND_UNKNOWN;
const char *err;
int tbm_bufmgr_fd = -1;
char *tbm_bufmgr_device_name = NULL;
@@ -1448,8 +1449,14 @@ dri2_initialize_tizen(_EGLDisplay *disp)
dri2_dpy->own_device = 1;
}
- /* TPL_BACKEND_UNKNOWN type make checking runtime type check */
- tpl_display = tpl_display_create(TPL_BACKEND_UNKNOWN, disp->PlatformDisplay);
+ /* Can find the backend type of libtpl-egl through PlatformDisplay */
+ tpl_backend = tpl_display_get_backend_type(disp->PlatformDisplay);
+ /* If tpl_backend is a wayland client, thread backend should be used
+ * to use dri2_surf->out_fence_fd. */
+ if (tpl_backend == TPL_BACKEND_WAYLAND)
+ tpl_backend = TPL_BACKEND_WAYLAND_THREAD;
+
+ tpl_display = tpl_display_create(tpl_backend, disp->PlatformDisplay);
if (!tpl_display) {
err = "DRI2: failed to create tpl_display";
goto cleanup_display;