mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-30 01:20:17 +01:00
st/mesa: allow R8 to not be exposed as renderable by driver
A3xx GPUs support RG8 and RGBA8, but not R8 for rendering. Add RG8 as fallbacks for integer formats, and require a renderable format to be picked for all R8 variants. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5748>
This commit is contained in:
parent
9e2afe4f05
commit
ef11d5fc8b
1 changed files with 7 additions and 3 deletions
|
|
@ -910,7 +910,7 @@ static const struct format_mapping format_map[] = {
|
|||
},
|
||||
{
|
||||
{ GL_R8I, GL_RED_INTEGER_EXT, 0},
|
||||
{ PIPE_FORMAT_R8_SINT, 0},
|
||||
{ PIPE_FORMAT_R8_SINT, PIPE_FORMAT_R8G8_SINT, 0},
|
||||
},
|
||||
{
|
||||
{ GL_R16I, 0},
|
||||
|
|
@ -922,7 +922,7 @@ static const struct format_mapping format_map[] = {
|
|||
},
|
||||
{
|
||||
{ GL_R8UI, 0},
|
||||
{ PIPE_FORMAT_R8_UINT, 0},
|
||||
{ PIPE_FORMAT_R8_UINT, PIPE_FORMAT_R8G8_UINT, 0},
|
||||
},
|
||||
{
|
||||
{ GL_R16UI, 0},
|
||||
|
|
@ -1281,7 +1281,11 @@ st_ChooseTextureFormat(struct gl_context *ctx, GLenum target,
|
|||
internalFormat == GL_RGB16F ||
|
||||
internalFormat == GL_RGBA16F ||
|
||||
internalFormat == GL_RGB32F ||
|
||||
internalFormat == GL_RGBA32F)
|
||||
internalFormat == GL_RGBA32F ||
|
||||
internalFormat == GL_RED ||
|
||||
internalFormat == GL_RED_SNORM ||
|
||||
internalFormat == GL_R8I ||
|
||||
internalFormat == GL_R8UI)
|
||||
bindings |= PIPE_BIND_RENDER_TARGET;
|
||||
|
||||
/* GLES allows the driver to choose any format which matches
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue