freedreno/gmem: make noscis debug actually do something on a6xx
authorRob Clark <robdclark@chromium.org>
Fri, 22 May 2020 19:28:38 +0000 (12:28 -0700)
committerMarge Bot <eric+marge@anholt.net>
Tue, 26 May 2020 19:14:22 +0000 (19:14 +0000)
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5188>

src/gallium/drivers/freedreno/freedreno_gmem.c

index a289662f0de35c8ae4578912df01cc89d59e8a37..4c694df1c63130aa56b9fe0e4534d1c1603c5e31 100644 (file)
@@ -463,7 +463,7 @@ gmem_key_init(struct fd_batch *batch, bool assume_zs, bool no_scis_opt)
        /* NOTE: on a6xx, the max-scissor-rect is handled in fd6_gmem, and
         * we just rely on CP_COND_EXEC to skip bins with no geometry.
         */
-       if ((fd_mesa_debug & FD_DBG_NOSCIS) || no_scis_opt || is_a6xx(screen)) {
+       if (no_scis_opt || is_a6xx(screen)) {
                key->minx = 0;
                key->miny = 0;
                key->width = pfb->width;
@@ -471,6 +471,13 @@ gmem_key_init(struct fd_batch *batch, bool assume_zs, bool no_scis_opt)
        } else {
                struct pipe_scissor_state *scissor = &batch->max_scissor;
 
+               if (fd_mesa_debug & FD_DBG_NOSCIS) {
+                       scissor->minx = 0;
+                       scissor->miny = 0;
+                       scissor->maxx = pfb->width;
+                       scissor->maxy = pfb->height;
+               }
+
                /* round down to multiple of alignment: */
                key->minx = scissor->minx & ~(screen->gmem_alignw - 1);
                key->miny = scissor->miny & ~(screen->gmem_alignh - 1);