freedreno: Use bypass rendering for tessellation
authorKristian H. Kristensen <hoegsberg@google.com>
Wed, 23 Oct 2019 02:49:47 +0000 (19:49 -0700)
committerKristian H. Kristensen <hoegsberg@google.com>
Fri, 8 Nov 2019 00:40:27 +0000 (16:40 -0800)
It seems like tiling could work in the Adreno architecture, but we've
only ever seen bypass rendering with tessellation.  For now, let's do
that too.

Signed-off-by: Kristian H. Kristensen <hoegsberg@google.com>
Acked-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Rob Clark <robdclark@gmail.com>
src/gallium/drivers/freedreno/freedreno_gmem.c

index 65ae8b5a825d46814f9580c032e6d08c22046b42..851abb9c6cc1f31558bb82558994a368380ad8c9 100644 (file)
@@ -458,6 +458,14 @@ fd_gmem_render_tiles(struct fd_batch *batch)
                        sysmem = true;
        }
 
+       /* Tessellation doesn't seem to support tiled rendering so fall back to
+        * bypass.
+        */
+       if (batch->tessellation) {
+               debug_assert(ctx->emit_sysmem_prep);
+               sysmem = true;
+       }
+
        fd_reset_wfi(batch);
 
        ctx->stats.batch_total++;