Mesa (main): nv50: use the no-mipmap texture type for 2d ms views

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sat Jun 12 04:45:54 UTC 2021


Module: Mesa
Branch: main
Commit: aa14851340f1a3b5cda9275989f20acff039870e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aa14851340f1a3b5cda9275989f20acff039870e

Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Thu Jun 10 00:20:04 2021 -0400

nv50: use the no-mipmap texture type for 2d ms views

There are size restrictions on 2D images which can't accommodate the
*full* 2D MSAA image. There's no way to make it work for 2D MSAA Array
images, but at least for the non-array variants, we can use the
no-mipmap variant which has a larger maximum size.

Fixes dEQP-GLES31.functional.shaders.builtin_functions.texture_size.*2d

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
Reviewed-by: Karol Herbst <kherbst at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11285>

---

 src/gallium/drivers/nouveau/nv50/nv50_tex.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/nouveau/nv50/nv50_tex.c b/src/gallium/drivers/nouveau/nv50/nv50_tex.c
index abeb9160abc..67c47502adc 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_tex.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_tex.c
@@ -161,7 +161,10 @@ nv50_create_texture_view(struct pipe_context *pipe,
       tic[2] |= G80_TIC_2_TEXTURE_TYPE_ONE_D;
       break;
    case PIPE_TEXTURE_2D:
-      tic[2] |= G80_TIC_2_TEXTURE_TYPE_TWO_D;
+      if (mt->ms_x)
+         tic[2] |= G80_TIC_2_TEXTURE_TYPE_TWO_D_NO_MIPMAP;
+      else
+         tic[2] |= G80_TIC_2_TEXTURE_TYPE_TWO_D;
       break;
    case PIPE_TEXTURE_RECT:
       tic[2] |= G80_TIC_2_TEXTURE_TYPE_TWO_D_NO_MIPMAP;



More information about the mesa-commit mailing list