mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-06 19:40:10 +01:00
dri2: Remove format components mapping
This was only used to answer the DRI components attrib request, which was made unused as of the previous commit to move knowledge of the enum to wayland-drm server-side code. In theory, this makes the format mapping a little less flexible, however in practice wayland-drm was neither extensible nor extended, and has been deprecated in favour of explicit user awareness of format properties. Signed-off-by: Daniel Stone <daniels@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35856>
This commit is contained in:
parent
2bf50a2b31
commit
4d61e281ea
5 changed files with 66 additions and 127 deletions
|
|
@ -686,7 +686,6 @@ dri2_update_tex_buffer(struct dri_drawable *drawable,
|
|||
static const struct dri2_format_mapping r8_b8_g8_mapping = {
|
||||
DRM_FORMAT_YVU420,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V,
|
||||
PIPE_FORMAT_R8_B8_G8_420_UNORM,
|
||||
3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
|
|
@ -697,7 +696,6 @@ static const struct dri2_format_mapping r8_b8_g8_mapping = {
|
|||
static const struct dri2_format_mapping r8_g8_b8_mapping = {
|
||||
DRM_FORMAT_YUV420,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V,
|
||||
PIPE_FORMAT_R8_G8_B8_420_UNORM,
|
||||
3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
|
|
@ -708,7 +706,6 @@ static const struct dri2_format_mapping r8_g8_b8_mapping = {
|
|||
static const struct dri2_format_mapping r8_g8b8_mapping = {
|
||||
DRM_FORMAT_NV12,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV,
|
||||
PIPE_FORMAT_R8_G8B8_420_UNORM,
|
||||
2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
|
|
@ -718,7 +715,6 @@ static const struct dri2_format_mapping r8_g8b8_mapping = {
|
|||
static const struct dri2_format_mapping r8_g8b8_mapping_422 = {
|
||||
DRM_FORMAT_NV16,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV,
|
||||
PIPE_FORMAT_R8_G8B8_422_UNORM,
|
||||
2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
|
|
@ -728,7 +724,6 @@ static const struct dri2_format_mapping r8_g8b8_mapping_422 = {
|
|||
static const struct dri2_format_mapping r8_b8g8_mapping = {
|
||||
DRM_FORMAT_NV21,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV,
|
||||
PIPE_FORMAT_R8_B8G8_420_UNORM,
|
||||
2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
|
|
@ -738,7 +733,6 @@ static const struct dri2_format_mapping r8_b8g8_mapping = {
|
|||
static const struct dri2_format_mapping r8g8_r8b8_mapping = {
|
||||
DRM_FORMAT_YUYV,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV,
|
||||
PIPE_FORMAT_R8G8_R8B8_UNORM, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ARGB8888 } }
|
||||
|
|
@ -747,7 +741,6 @@ static const struct dri2_format_mapping r8g8_r8b8_mapping = {
|
|||
static const struct dri2_format_mapping r8b8_r8g8_mapping = {
|
||||
DRM_FORMAT_YVYU,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV,
|
||||
PIPE_FORMAT_R8B8_R8G8_UNORM, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ARGB8888 } }
|
||||
|
|
@ -756,7 +749,6 @@ static const struct dri2_format_mapping r8b8_r8g8_mapping = {
|
|||
static const struct dri2_format_mapping b8r8_g8r8_mapping = {
|
||||
DRM_FORMAT_VYUY,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV,
|
||||
PIPE_FORMAT_B8R8_G8R8_UNORM, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ABGR8888 } }
|
||||
|
|
@ -765,7 +757,6 @@ static const struct dri2_format_mapping b8r8_g8r8_mapping = {
|
|||
static const struct dri2_format_mapping g8r8_b8r8_mapping = {
|
||||
DRM_FORMAT_UYVY,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV,
|
||||
PIPE_FORMAT_G8R8_B8R8_UNORM, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ABGR8888 } }
|
||||
|
|
@ -774,7 +765,6 @@ static const struct dri2_format_mapping g8r8_b8r8_mapping = {
|
|||
static const struct dri2_format_mapping r10_g10b10_mapping = {
|
||||
DRM_FORMAT_NV15,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV,
|
||||
PIPE_FORMAT_R10_G10B10_420_UNORM,
|
||||
2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE },
|
||||
|
|
@ -784,7 +774,6 @@ static const struct dri2_format_mapping r10_g10b10_mapping = {
|
|||
static const struct dri2_format_mapping r10_g10b10_mapping_422 = {
|
||||
DRM_FORMAT_NV20,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV,
|
||||
PIPE_FORMAT_R10_G10B10_422_UNORM,
|
||||
2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE },
|
||||
|
|
@ -794,7 +783,6 @@ static const struct dri2_format_mapping r10_g10b10_mapping_422 = {
|
|||
static const struct dri2_format_mapping r8g8b8_420_mapping = {
|
||||
DRM_FORMAT_YUV420_8BIT,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_XYUV,
|
||||
PIPE_FORMAT_R8G8B8_420_UNORM_PACKED,
|
||||
1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE } },
|
||||
|
|
@ -803,7 +791,6 @@ static const struct dri2_format_mapping r8g8b8_420_mapping = {
|
|||
static const struct dri2_format_mapping r10g10b10_420_mapping = {
|
||||
DRM_FORMAT_YUV420_10BIT,
|
||||
__DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_XYUV,
|
||||
PIPE_FORMAT_R10G10B10_420_UNORM_PACKED,
|
||||
1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE } },
|
||||
|
|
@ -1184,7 +1171,6 @@ dri_create_image(struct dri_screen *screen,
|
|||
img->layer = 0;
|
||||
img->dri_format = format;
|
||||
img->dri_fourcc = map->dri_fourcc;
|
||||
img->dri_components = 0;
|
||||
img->use = use;
|
||||
img->in_fence_fd = -1;
|
||||
|
||||
|
|
@ -1203,11 +1189,6 @@ dri2_query_image_common(struct dri_image *image, int attrib, int *value)
|
|||
case __DRI_IMAGE_ATTRIB_HEIGHT:
|
||||
*value = image->texture->height0;
|
||||
return true;
|
||||
case __DRI_IMAGE_ATTRIB_COMPONENTS:
|
||||
if (image->dri_components == 0)
|
||||
return false;
|
||||
*value = image->dri_components;
|
||||
return true;
|
||||
case __DRI_IMAGE_ATTRIB_FOURCC:
|
||||
if (image->dri_fourcc) {
|
||||
*value = image->dri_fourcc;
|
||||
|
|
@ -1423,8 +1404,6 @@ dri2_dup_image(struct dri_image *image, void *loaderPrivate)
|
|||
img->dri_format = image->dri_format;
|
||||
img->dri_fourcc = image->dri_fourcc;
|
||||
img->internal_format = image->internal_format;
|
||||
/* This should be 0 for sub images, but dup is also used for base images. */
|
||||
img->dri_components = image->dri_components;
|
||||
img->use = image->use;
|
||||
img->in_fence_fd = (image->in_fence_fd > 0) ?
|
||||
os_dupfd_cloexec(image->in_fence_fd) : -1;
|
||||
|
|
@ -1490,7 +1469,6 @@ dri2_from_names(struct dri_screen *screen, int width, int height, int fourcc,
|
|||
if (img == NULL)
|
||||
return NULL;
|
||||
|
||||
img->dri_components = map->dri_components;
|
||||
img->dri_fourcc = map->dri_fourcc;
|
||||
img->dri_format = map->dri_format;
|
||||
|
||||
|
|
@ -1513,15 +1491,6 @@ dri2_from_planar(struct dri_image *image, int plane, void *loaderPrivate)
|
|||
}
|
||||
}
|
||||
|
||||
if (image->dri_components == 0) {
|
||||
uint64_t modifier;
|
||||
if (!dri2_resource_get_param(image, PIPE_RESOURCE_PARAM_MODIFIER, 0,
|
||||
&modifier) ||
|
||||
modifier == DRM_FORMAT_MOD_INVALID) {
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
img = dri2_dup_image(image, loaderPrivate);
|
||||
if (img == NULL)
|
||||
return NULL;
|
||||
|
|
@ -1530,8 +1499,6 @@ dri2_from_planar(struct dri_image *image, int plane, void *loaderPrivate)
|
|||
img->texture->screen->resource_changed(img->texture->screen,
|
||||
img->texture);
|
||||
|
||||
/* set this to 0 for sub images. */
|
||||
img->dri_components = 0;
|
||||
img->plane = plane;
|
||||
return img;
|
||||
}
|
||||
|
|
@ -1667,7 +1634,6 @@ dri2_from_dma_bufs(struct dri_screen *screen,
|
|||
goto exit;
|
||||
}
|
||||
|
||||
img->dri_components = map->dri_components;
|
||||
img->dri_fourcc = fourcc;
|
||||
img->dri_format = map->dri_format;
|
||||
img->imported_dmabuf = true;
|
||||
|
|
|
|||
|
|
@ -423,182 +423,182 @@ dri2_create_from_texture(struct dri_context *dri_ctx, int target, unsigned textu
|
|||
|
||||
static const struct dri2_format_mapping dri2_format_table[] = {
|
||||
{ DRM_FORMAT_ABGR16161616F, __DRI_IMAGE_FORMAT_ABGR16161616F,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_R16G16B16A16_FLOAT, 1,
|
||||
PIPE_FORMAT_R16G16B16A16_FLOAT, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR16161616F } } },
|
||||
{ DRM_FORMAT_XBGR16161616F, __DRI_IMAGE_FORMAT_XBGR16161616F,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_R16G16B16X16_FLOAT, 1,
|
||||
PIPE_FORMAT_R16G16B16X16_FLOAT, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_XBGR16161616F } } },
|
||||
{ DRM_FORMAT_ABGR16161616, __DRI_IMAGE_FORMAT_ABGR16161616,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_R16G16B16A16_UNORM, 1,
|
||||
PIPE_FORMAT_R16G16B16A16_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR16161616 } } },
|
||||
{ DRM_FORMAT_XBGR16161616, __DRI_IMAGE_FORMAT_XBGR16161616,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_R16G16B16X16_UNORM, 1,
|
||||
PIPE_FORMAT_R16G16B16X16_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_XBGR16161616 } } },
|
||||
{ DRM_FORMAT_ARGB2101010, __DRI_IMAGE_FORMAT_ARGB2101010,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_B10G10R10A2_UNORM, 1,
|
||||
PIPE_FORMAT_B10G10R10A2_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ARGB2101010 } } },
|
||||
{ DRM_FORMAT_XRGB2101010, __DRI_IMAGE_FORMAT_XRGB2101010,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_B10G10R10X2_UNORM, 1,
|
||||
PIPE_FORMAT_B10G10R10X2_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_XRGB2101010 } } },
|
||||
{ DRM_FORMAT_ABGR2101010, __DRI_IMAGE_FORMAT_ABGR2101010,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_R10G10B10A2_UNORM, 1,
|
||||
PIPE_FORMAT_R10G10B10A2_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR2101010 } } },
|
||||
{ DRM_FORMAT_XBGR2101010, __DRI_IMAGE_FORMAT_XBGR2101010,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_R10G10B10X2_UNORM, 1,
|
||||
PIPE_FORMAT_R10G10B10X2_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_XBGR2101010 } } },
|
||||
{ DRM_FORMAT_ARGB8888, __DRI_IMAGE_FORMAT_ARGB8888,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_BGRA8888_UNORM, 1,
|
||||
PIPE_FORMAT_BGRA8888_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ARGB8888 } } },
|
||||
{ DRM_FORMAT_ABGR8888, __DRI_IMAGE_FORMAT_ABGR8888,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_RGBA8888_UNORM, 1,
|
||||
PIPE_FORMAT_RGBA8888_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR8888 } } },
|
||||
{ __DRI_IMAGE_FOURCC_SARGB8888, __DRI_IMAGE_FORMAT_SARGB8,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_BGRA8888_SRGB, 1,
|
||||
PIPE_FORMAT_BGRA8888_SRGB, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_SARGB8 } } },
|
||||
{ DRM_FORMAT_XRGB8888, __DRI_IMAGE_FORMAT_XRGB8888,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_BGRX8888_UNORM, 1,
|
||||
PIPE_FORMAT_BGRX8888_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_XRGB8888 } } },
|
||||
{ DRM_FORMAT_RGB888, __DRI_IMAGE_FORMAT_RGB888,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_B8G8R8_UNORM, 1,
|
||||
PIPE_FORMAT_B8G8R8_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_RGB888 } } },
|
||||
{ DRM_FORMAT_XBGR8888, __DRI_IMAGE_FORMAT_XBGR8888,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_RGBX8888_UNORM, 1,
|
||||
PIPE_FORMAT_RGBX8888_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_XBGR8888 } } },
|
||||
{ DRM_FORMAT_BGR888, __DRI_IMAGE_FORMAT_BGR888,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_R8G8B8_UNORM, 1,
|
||||
PIPE_FORMAT_R8G8B8_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_BGR888 } } },
|
||||
{ DRM_FORMAT_ARGB1555, __DRI_IMAGE_FORMAT_ARGB1555,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_B5G5R5A1_UNORM, 1,
|
||||
PIPE_FORMAT_B5G5R5A1_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ARGB1555 } } },
|
||||
{ DRM_FORMAT_ABGR1555, __DRI_IMAGE_FORMAT_ABGR1555,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_R5G5B5A1_UNORM, 1,
|
||||
PIPE_FORMAT_R5G5B5A1_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR1555 } } },
|
||||
{ DRM_FORMAT_ARGB4444, __DRI_IMAGE_FORMAT_ARGB4444,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_B4G4R4A4_UNORM, 1,
|
||||
PIPE_FORMAT_B4G4R4A4_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ARGB4444 } } },
|
||||
{ DRM_FORMAT_ABGR4444, __DRI_IMAGE_FORMAT_ABGR4444,
|
||||
__DRI_IMAGE_COMPONENTS_RGBA, PIPE_FORMAT_R4G4B4A4_UNORM, 1,
|
||||
PIPE_FORMAT_R4G4B4A4_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR4444 } } },
|
||||
{ DRM_FORMAT_RGB565, __DRI_IMAGE_FORMAT_RGB565,
|
||||
__DRI_IMAGE_COMPONENTS_RGB, PIPE_FORMAT_B5G6R5_UNORM, 1,
|
||||
PIPE_FORMAT_B5G6R5_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_RGB565 } } },
|
||||
{ DRM_FORMAT_R8, __DRI_IMAGE_FORMAT_R8,
|
||||
__DRI_IMAGE_COMPONENTS_R, PIPE_FORMAT_R8_UNORM, 1,
|
||||
PIPE_FORMAT_R8_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_R16, __DRI_IMAGE_FORMAT_R16,
|
||||
__DRI_IMAGE_COMPONENTS_R, PIPE_FORMAT_R16_UNORM, 1,
|
||||
PIPE_FORMAT_R16_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_GR88, __DRI_IMAGE_FORMAT_GR88,
|
||||
__DRI_IMAGE_COMPONENTS_RG, PIPE_FORMAT_RG88_UNORM, 1,
|
||||
PIPE_FORMAT_RG88_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 } } },
|
||||
{ DRM_FORMAT_GR1616, __DRI_IMAGE_FORMAT_GR1616,
|
||||
__DRI_IMAGE_COMPONENTS_RG, PIPE_FORMAT_RG1616_UNORM, 1,
|
||||
PIPE_FORMAT_RG1616_UNORM, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR1616 } } },
|
||||
|
||||
{ DRM_FORMAT_YUV410, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 2, 2, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 2, 2, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YUV411, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 2, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 2, 0, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YUV420, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 1, 1, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YUV422, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 1, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 1, 0, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YUV444, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 0, 0, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
|
||||
{ DRM_FORMAT_YVU410, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 2, 2, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 2, 2, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YVU411, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 2, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 2, 0, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YVU420, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 1, 1, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YVU422, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 1, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 1, 0, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
{ DRM_FORMAT_YVU444, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_IYUV, 3,
|
||||
PIPE_FORMAT_IYUV, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 2, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 0, 0, __DRI_IMAGE_FORMAT_R8 } } },
|
||||
|
||||
{ DRM_FORMAT_S010, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y10X6_U10X6_V10X6_420_UNORM, 3,
|
||||
PIPE_FORMAT_Y10X6_U10X6_V10X6_420_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 1, 1, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S210, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y10X6_U10X6_V10X6_422_UNORM, 3,
|
||||
PIPE_FORMAT_Y10X6_U10X6_V10X6_422_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 1, 0, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S410, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y10X6_U10X6_V10X6_444_UNORM, 3,
|
||||
PIPE_FORMAT_Y10X6_U10X6_V10X6_444_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 0, 0, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S012, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y12X4_U12X4_V12X4_420_UNORM, 3,
|
||||
PIPE_FORMAT_Y12X4_U12X4_V12X4_420_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 1, 1, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S212, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y12X4_U12X4_V12X4_422_UNORM, 3,
|
||||
PIPE_FORMAT_Y12X4_U12X4_V12X4_422_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 1, 0, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S412, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y12X4_U12X4_V12X4_444_UNORM, 3,
|
||||
PIPE_FORMAT_Y12X4_U12X4_V12X4_444_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 0, 0, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S016, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y16_U16_V16_420_UNORM, 3,
|
||||
PIPE_FORMAT_Y16_U16_V16_420_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 1, 1, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S216, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y16_U16_V16_422_UNORM, 3,
|
||||
PIPE_FORMAT_Y16_U16_V16_422_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 1, 0, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
{ DRM_FORMAT_S416, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_U_V, PIPE_FORMAT_Y16_U16_V16_444_UNORM, 3,
|
||||
PIPE_FORMAT_Y16_U16_V16_444_UNORM, 3,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 2, 0, 0, __DRI_IMAGE_FORMAT_R16 } } },
|
||||
|
||||
{ DRM_FORMAT_NV12, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_NV12, 2,
|
||||
PIPE_FORMAT_NV12, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_GR88 } } },
|
||||
{ DRM_FORMAT_NV21, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_NV21, 2,
|
||||
PIPE_FORMAT_NV21, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_GR88 } } },
|
||||
|
||||
|
|
@ -606,45 +606,45 @@ static const struct dri2_format_mapping dri2_format_table[] = {
|
|||
are tightly packed, so the planes don't correspond
|
||||
to any native DRI format */
|
||||
{ DRM_FORMAT_NV15, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_NV15, 2,
|
||||
PIPE_FORMAT_NV15, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_NONE } } },
|
||||
{ DRM_FORMAT_NV20, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_NV20, 2,
|
||||
PIPE_FORMAT_NV20, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE },
|
||||
{ 1, 1, 0, __DRI_IMAGE_FORMAT_NONE } } },
|
||||
|
||||
{ DRM_FORMAT_P010, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_P010, 2,
|
||||
PIPE_FORMAT_P010, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_GR1616 } } },
|
||||
{ DRM_FORMAT_P012, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_P012, 2,
|
||||
PIPE_FORMAT_P012, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_GR1616 } } },
|
||||
{ DRM_FORMAT_P016, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_P016, 2,
|
||||
PIPE_FORMAT_P016, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_GR1616 } } },
|
||||
{ DRM_FORMAT_P030, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_P030, 2,
|
||||
PIPE_FORMAT_P030, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R16 },
|
||||
{ 1, 1, 1, __DRI_IMAGE_FORMAT_GR1616 } } },
|
||||
|
||||
{ DRM_FORMAT_NV16, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UV, PIPE_FORMAT_NV16, 2,
|
||||
PIPE_FORMAT_NV16, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_R8 },
|
||||
{ 1, 1, 0, __DRI_IMAGE_FORMAT_GR88 } } },
|
||||
|
||||
{ DRM_FORMAT_AYUV, __DRI_IMAGE_FORMAT_ABGR8888,
|
||||
__DRI_IMAGE_COMPONENTS_AYUV, PIPE_FORMAT_AYUV, 1,
|
||||
PIPE_FORMAT_AYUV, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR8888 } } },
|
||||
{ DRM_FORMAT_XYUV8888, __DRI_IMAGE_FORMAT_XBGR8888,
|
||||
__DRI_IMAGE_COMPONENTS_XYUV, PIPE_FORMAT_XYUV, 1,
|
||||
PIPE_FORMAT_XYUV, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_XBGR8888 } } },
|
||||
|
||||
{ DRM_FORMAT_Y410, __DRI_IMAGE_FORMAT_ABGR2101010,
|
||||
__DRI_IMAGE_COMPONENTS_AYUV, PIPE_FORMAT_Y410, 1,
|
||||
PIPE_FORMAT_Y410, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR2101010 } } },
|
||||
|
||||
/* Y412 is an unusual format. It has the same layout as Y416 (i.e.,
|
||||
|
|
@ -653,10 +653,10 @@ static const struct dri2_format_mapping dri2_format_table[] = {
|
|||
* to these bits.
|
||||
*/
|
||||
{ DRM_FORMAT_Y412, __DRI_IMAGE_FORMAT_ABGR16161616,
|
||||
__DRI_IMAGE_COMPONENTS_AYUV, PIPE_FORMAT_Y412, 1,
|
||||
PIPE_FORMAT_Y412, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR16161616 } } },
|
||||
{ DRM_FORMAT_Y416, __DRI_IMAGE_FORMAT_ABGR16161616,
|
||||
__DRI_IMAGE_COMPONENTS_AYUV, PIPE_FORMAT_Y416, 1,
|
||||
PIPE_FORMAT_Y416, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_ABGR16161616 } } },
|
||||
|
||||
/* For YUYV and UYVY buffers, we set up two overlapping DRI images
|
||||
|
|
@ -668,19 +668,19 @@ static const struct dri2_format_mapping dri2_format_table[] = {
|
|||
* components correctly when sampling from plane 0, and interpolate
|
||||
* U and V correctly when sampling from plane 1. */
|
||||
{ DRM_FORMAT_YUYV, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV, PIPE_FORMAT_YUYV, 2,
|
||||
PIPE_FORMAT_YUYV, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ARGB8888 } } },
|
||||
{ DRM_FORMAT_YVYU, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV, PIPE_FORMAT_YVYU, 2,
|
||||
PIPE_FORMAT_YVYU, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ARGB8888 } } },
|
||||
{ DRM_FORMAT_UYVY, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UXVX, PIPE_FORMAT_UYVY, 2,
|
||||
PIPE_FORMAT_UYVY, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ABGR8888 } } },
|
||||
{ DRM_FORMAT_VYUY, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_UXVX, PIPE_FORMAT_VYUY, 2,
|
||||
PIPE_FORMAT_VYUY, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR88 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ABGR8888 } } },
|
||||
|
||||
|
|
@ -688,7 +688,7 @@ static const struct dri2_format_mapping dri2_format_table[] = {
|
|||
* formats.
|
||||
*/
|
||||
{ DRM_FORMAT_Y210, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV, PIPE_FORMAT_Y210, 2,
|
||||
PIPE_FORMAT_Y210, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR1616 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ABGR16161616 } } },
|
||||
/* Y212 is an unusual format. It has the same layout as Y216 (i.e.,
|
||||
|
|
@ -697,24 +697,24 @@ static const struct dri2_format_mapping dri2_format_table[] = {
|
|||
* to these bits.
|
||||
*/
|
||||
{ DRM_FORMAT_Y212, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV, PIPE_FORMAT_Y212, 2,
|
||||
PIPE_FORMAT_Y212, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR1616 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ABGR16161616 } } },
|
||||
{ DRM_FORMAT_Y216, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_Y_XUXV, PIPE_FORMAT_Y216, 2,
|
||||
PIPE_FORMAT_Y216, 2,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_GR1616 },
|
||||
{ 0, 1, 0, __DRI_IMAGE_FORMAT_ABGR16161616 } } },
|
||||
|
||||
/* YUV420_8BIT is a single plane with all components, but in an
|
||||
unspecified order */
|
||||
{ DRM_FORMAT_YUV420_8BIT, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_XYUV, PIPE_FORMAT_Y8U8V8_420_UNORM_PACKED, 1,
|
||||
PIPE_FORMAT_Y8U8V8_420_UNORM_PACKED, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE } } },
|
||||
|
||||
/* YUV420_10BIT is a single plane with all components, but in an
|
||||
unspecified order */
|
||||
{ DRM_FORMAT_YUV420_10BIT, __DRI_IMAGE_FORMAT_NONE,
|
||||
__DRI_IMAGE_COMPONENTS_XYUV, PIPE_FORMAT_Y10U10V10_420_UNORM_PACKED, 1,
|
||||
PIPE_FORMAT_Y10U10V10_420_UNORM_PACKED, 1,
|
||||
{ { 0, 0, 0, __DRI_IMAGE_FORMAT_NONE } } },
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -30,7 +30,6 @@
|
|||
struct dri2_format_mapping {
|
||||
int dri_fourcc;
|
||||
int dri_format; /* image format */
|
||||
int dri_components;
|
||||
enum pipe_format pipe_format;
|
||||
int nplanes;
|
||||
struct {
|
||||
|
|
|
|||
|
|
@ -143,7 +143,6 @@ struct dri_image {
|
|||
unsigned layer;
|
||||
uint32_t dri_format;
|
||||
uint32_t dri_fourcc;
|
||||
uint32_t dri_components;
|
||||
/* Provided by eglCreateImageKHR if creating from a
|
||||
* texture or a renderbuffer. 0 otherwise.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -787,30 +787,6 @@ typedef struct {
|
|||
#define __DRI_IMAGE_FOURCC_SABGR8888 0x84324258
|
||||
#define __DRI_IMAGE_FOURCC_SXRGB8888 0x85324258
|
||||
|
||||
/**
|
||||
* Queryable on images created by createImageFromNames.
|
||||
*
|
||||
* RGB and RGBA might be usable directly as images, but it's still
|
||||
* recommended to call fromPlanar with plane == 0.
|
||||
*
|
||||
* Y_U_V, Y_UV,Y_XUXV and Y_UXVX all requires call to fromPlanar to create
|
||||
* usable sub-images, sampling from images return raw YUV data and
|
||||
* color conversion needs to be done in the shader.
|
||||
*
|
||||
* \since 5
|
||||
*/
|
||||
|
||||
#define __DRI_IMAGE_COMPONENTS_RGB 0x3001
|
||||
#define __DRI_IMAGE_COMPONENTS_RGBA 0x3002
|
||||
#define __DRI_IMAGE_COMPONENTS_Y_U_V 0x3003
|
||||
#define __DRI_IMAGE_COMPONENTS_Y_UV 0x3004
|
||||
#define __DRI_IMAGE_COMPONENTS_Y_XUXV 0x3005
|
||||
#define __DRI_IMAGE_COMPONENTS_Y_UXVX 0x3008
|
||||
#define __DRI_IMAGE_COMPONENTS_AYUV 0x3009
|
||||
#define __DRI_IMAGE_COMPONENTS_XYUV 0x300A
|
||||
#define __DRI_IMAGE_COMPONENTS_R 0x3006
|
||||
#define __DRI_IMAGE_COMPONENTS_RG 0x3007
|
||||
|
||||
|
||||
/**
|
||||
* queryImage attributes
|
||||
|
|
@ -822,7 +798,6 @@ typedef struct {
|
|||
#define __DRI_IMAGE_ATTRIB_FORMAT 0x2003 /* available in versions 3+ */
|
||||
#define __DRI_IMAGE_ATTRIB_WIDTH 0x2004 /* available in versions 4+ */
|
||||
#define __DRI_IMAGE_ATTRIB_HEIGHT 0x2005
|
||||
#define __DRI_IMAGE_ATTRIB_COMPONENTS 0x2006 /* available in versions 5+ */
|
||||
#define __DRI_IMAGE_ATTRIB_FD 0x2007 /* available in versions
|
||||
* 7+. Each query will return a
|
||||
* new fd. */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue