mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-02 04:30:25 +01:00
dri: Add additional 16/32b float/int formats
Add additional 16 and 32b float formats, and the missing BGR161616. For the dri2_format_table, just use the pipe formats twice, rather than introducing new __DRI_IMAGE_FORMAT_x in this day and age (they are the same thing). Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com> Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36081>
This commit is contained in:
parent
0fcb0ac1c5
commit
6d3f266406
3 changed files with 32 additions and 0 deletions
|
|
@ -2169,7 +2169,15 @@ dri2_num_fourcc_format_planes(EGLint format)
|
|||
case DRM_FORMAT_RG88:
|
||||
case DRM_FORMAT_GR88:
|
||||
case DRM_FORMAT_R16:
|
||||
case DRM_FORMAT_R16F:
|
||||
case DRM_FORMAT_R32F:
|
||||
case DRM_FORMAT_GR1616:
|
||||
case DRM_FORMAT_GR1616F:
|
||||
case DRM_FORMAT_GR3232F:
|
||||
case DRM_FORMAT_BGR161616:
|
||||
case DRM_FORMAT_BGR161616F:
|
||||
case DRM_FORMAT_BGR323232F:
|
||||
case DRM_FORMAT_ABGR32323232F:
|
||||
case DRM_FORMAT_RGB332:
|
||||
case DRM_FORMAT_BGR233:
|
||||
case DRM_FORMAT_XRGB4444:
|
||||
|
|
|
|||
|
|
@ -457,6 +457,22 @@ static const struct dri2_format_mapping dri2_format_table[] = {
|
|||
PIPE_FORMAT_RG88_UNORM, 1, },
|
||||
{ DRM_FORMAT_GR1616, __DRI_IMAGE_FORMAT_GR1616,
|
||||
PIPE_FORMAT_RG1616_UNORM, 1, },
|
||||
{ DRM_FORMAT_R16F, PIPE_FORMAT_R16_FLOAT,
|
||||
PIPE_FORMAT_R16_FLOAT, 1 },
|
||||
{ DRM_FORMAT_R32F, PIPE_FORMAT_R32_FLOAT,
|
||||
PIPE_FORMAT_R32_FLOAT, 1 },
|
||||
{ DRM_FORMAT_GR1616F, PIPE_FORMAT_R16G16_FLOAT,
|
||||
PIPE_FORMAT_R16G16_FLOAT, 1 },
|
||||
{ DRM_FORMAT_GR3232F, PIPE_FORMAT_R32G32_FLOAT,
|
||||
PIPE_FORMAT_R32G32_FLOAT, 1 },
|
||||
{ DRM_FORMAT_BGR161616, PIPE_FORMAT_R16G16B16_UNORM,
|
||||
PIPE_FORMAT_R16G16B16_UNORM, 1 },
|
||||
{ DRM_FORMAT_BGR161616F, PIPE_FORMAT_R16G16B16_FLOAT,
|
||||
PIPE_FORMAT_R16G16B16_FLOAT, 1 },
|
||||
{ DRM_FORMAT_BGR323232F, PIPE_FORMAT_R32G32B32_FLOAT,
|
||||
PIPE_FORMAT_R32G32B32_FLOAT, 1 },
|
||||
{ DRM_FORMAT_ABGR32323232F, PIPE_FORMAT_R32G32B32A32_FLOAT,
|
||||
PIPE_FORMAT_R32G32B32A32_FLOAT, 1 },
|
||||
|
||||
/*
|
||||
* YUV formats:
|
||||
|
|
|
|||
|
|
@ -68,6 +68,14 @@ static const struct {
|
|||
{ PIPE_FORMAT_R16G16B16A16_UNORM, DRM_FORMAT_ABGR16161616 },
|
||||
{ PIPE_FORMAT_R16G16B16X16_FLOAT, DRM_FORMAT_XBGR16161616F },
|
||||
{ PIPE_FORMAT_R16G16B16A16_FLOAT, DRM_FORMAT_ABGR16161616F },
|
||||
{ PIPE_FORMAT_R16_FLOAT, DRM_FORMAT_R16F },
|
||||
{ PIPE_FORMAT_R32_FLOAT, DRM_FORMAT_R32F },
|
||||
{ PIPE_FORMAT_R16G16_FLOAT, DRM_FORMAT_GR1616F },
|
||||
{ PIPE_FORMAT_R32G32_FLOAT, DRM_FORMAT_GR3232F },
|
||||
{ PIPE_FORMAT_R16G16B16_UNORM, DRM_FORMAT_BGR161616 },
|
||||
{ PIPE_FORMAT_R16G16B16_FLOAT, DRM_FORMAT_BGR161616F },
|
||||
{ PIPE_FORMAT_R32G32B32_FLOAT, DRM_FORMAT_BGR323232F },
|
||||
{ PIPE_FORMAT_R32G32B32A32_FLOAT, DRM_FORMAT_ABGR32323232F },
|
||||
};
|
||||
|
||||
enum pipe_format
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue