From b28a2510cc49711803b9ebcdc315c5011e9a282e Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Wed, 6 Jun 2018 12:57:18 +0100 Subject: dri: add missing 16bits formats mapping i965 advertises the 16-bit R and RG formats through eglQueryDmaBufFormatsEXT but falls over when a client tries to use or asks more information about such a format because driImageFormatToGLFormat returns MESA_FORMAT_NONE. Found by Eero Tamminen. v2: Add G16R16 formats (Lionel) v3: Fix G16R16 mapping to mesa format (Jason) Signed-off-by: Lionel Landwerlin Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106642 Reviewed-by: Plamena Manolova (v2) Reviewed-by: Jason Ekstrand --- src/mesa/drivers/dri/common/dri_util.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/mesa/drivers/dri/common/dri_util.c b/src/mesa/drivers/dri/common/dri_util.c index a591dfcd7d2..d257cb644c8 100644 --- a/src/mesa/drivers/dri/common/dri_util.c +++ b/src/mesa/drivers/dri/common/dri_util.c @@ -936,6 +936,22 @@ static const struct { .image_format = __DRI_IMAGE_FORMAT_SARGB8, .mesa_format = MESA_FORMAT_B8G8R8A8_SRGB, }, + { + .image_format = __DRI_IMAGE_FORMAT_R16, + .mesa_format = MESA_FORMAT_R_UNORM16, + }, + { + .image_format = __DRI_IMAGE_FORMAT_R16, + .mesa_format = MESA_FORMAT_L_UNORM16, + }, + { + .image_format = __DRI_IMAGE_FORMAT_GR1616, + .mesa_format = MESA_FORMAT_R16G16_UNORM, + }, + { + .image_format = __DRI_IMAGE_FORMAT_GR1616, + .mesa_format = MESA_FORMAT_L16A16_UNORM, + }, }; uint32_t -- cgit v1.2.3