dri: Consistently use createImageWithModifiers2()
dri_screen.c supports it regardless. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245>
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
@@ -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;
|
||||
|
@@ -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 */
|
||||
|
Reference in New Issue
Block a user