From 9a026df0f7eb0d130e9bd63afc98ee67a6e27649 Mon Sep 17 00:00:00 2001 From: Emma Anholt Date: Tue, 24 Oct 2023 15:33:00 -0700 Subject: [PATCH] dri: Consistently use createImageWithModifiers2() dri_screen.c supports it regardless. Part-of: --- src/gbm/backends/dri/gbm_dri.c | 4 ++-- src/loader/loader_dri3_helper.c | 3 +-- src/loader/loader_dri_helper.c | 16 +++++----------- 3 files changed, 8 insertions(+), 15 deletions(-) diff --git a/src/gbm/backends/dri/gbm_dri.c b/src/gbm/backends/dri/gbm_dri.c index 8db9c400d81..ec95a74443c 100644 --- a/src/gbm/backends/dri/gbm_dri.c +++ b/src/gbm/backends/dri/gbm_dri.c @@ -979,7 +979,7 @@ gbm_dri_bo_create(struct gbm_device *gbm, /* Gallium drivers requires shared in order to get the handle/stride */ dri_use |= __DRI_IMAGE_USE_SHARE; - if (modifiers && !dri->image->createImageWithModifiers) { + if (modifiers && !dri->image->createImageWithModifiers2) { errno = ENOSYS; goto failed; } @@ -1164,7 +1164,7 @@ gbm_dri_surface_create(struct gbm_device *gbm, struct gbm_dri_device *dri = gbm_dri_device(gbm); struct gbm_dri_surface *surf; - if (modifiers && !dri->image->createImageWithModifiers) { + if (modifiers && !dri->image->createImageWithModifiers2) { errno = ENOSYS; return NULL; } diff --git a/src/loader/loader_dri3_helper.c b/src/loader/loader_dri3_helper.c index dc1db4fa8be..0aea65258ce 100644 --- a/src/loader/loader_dri3_helper.c +++ b/src/loader/loader_dri3_helper.c @@ -1462,9 +1462,8 @@ dri3_alloc_render_buffer(struct loader_dri3_drawable *draw, unsigned int format, if (draw->dri_screen_render_gpu == draw->dri_screen_display_gpu) { #ifdef HAVE_DRI3_MODIFIERS if (draw->multiplanes_available && - draw->ext->image->base.version >= 15 && draw->ext->image->queryDmaBufModifiers && - draw->ext->image->createImageWithModifiers) { + draw->ext->image->createImageWithModifiers2) { xcb_dri3_get_supported_modifiers_cookie_t mod_cookie; xcb_dri3_get_supported_modifiers_reply_t *mod_reply; xcb_generic_error_t *error = NULL; diff --git a/src/loader/loader_dri_helper.c b/src/loader/loader_dri_helper.c index ae64547f8a6..e8d36765389 100644 --- a/src/loader/loader_dri_helper.c +++ b/src/loader/loader_dri_helper.c @@ -38,8 +38,7 @@ __DRIimage *loader_dri_create_image(__DRIscreen *screen, unsigned int modifiers_count, void *loaderPrivate) { - if (modifiers && modifiers_count > 0 && - image->base.version > 14 && image->createImageWithModifiers) { + if (modifiers && modifiers_count > 0 && image->createImageWithModifiers2) { bool has_valid_modifier = false; int i; @@ -58,15 +57,10 @@ __DRIimage *loader_dri_create_image(__DRIscreen *screen, if (!has_valid_modifier) return NULL; - if (image->base.version >= 19 && image->createImageWithModifiers2) - return image->createImageWithModifiers2(screen, width, height, - dri_format, modifiers, - modifiers_count, dri_usage, - loaderPrivate); - else - return image->createImageWithModifiers(screen, width, height, - dri_format, modifiers, - modifiers_count, loaderPrivate); + return image->createImageWithModifiers2(screen, width, height, + dri_format, modifiers, + modifiers_count, dri_usage, + loaderPrivate); } /* No modifier given or fallback to the legacy createImage allowed */