braodcom/vc5: Fix tile size setup for MRTs.
authorEric Anholt <eric@anholt.net>
Mon, 2 Oct 2017 23:54:09 +0000 (16:54 -0700)
committerEric Anholt <eric@anholt.net>
Tue, 10 Oct 2017 18:42:06 +0000 (11:42 -0700)
We need to divide the TLB in two for the 2nd color buffer, and again if
the 3rd or 4th are present.

src/gallium/drivers/vc5/vc5_job.c

index 5b97e6bf72f6f1fbe0807d05f35998eeebb4e892..ed1a64be89196adf1309afbf22bc3bd63b931e20 100644 (file)
@@ -193,9 +193,9 @@ vc5_job_set_tile_buffer_size(struct vc5_job *job)
         if (job->msaa)
                 tile_size_index += 2;
 
-        if (job->cbufs[3])
+        if (job->cbufs[3] || job->cbufs[2])
                 tile_size_index += 2;
-        else if (job->cbufs[2])
+        else if (job->cbufs[1])
                 tile_size_index++;
 
         int max_bpp = RENDER_TARGET_MAXIMUM_32BPP;