broadcom/vc5: Use DEPTH24_STENCIL8 for rendering to depth-only textures.
authorEric Anholt <eric@anholt.net>
Mon, 30 Oct 2017 22:12:33 +0000 (15:12 -0700)
committerEric Anholt <eric@anholt.net>
Tue, 7 Nov 2017 17:19:48 +0000 (09:19 -0800)
The HW puts the pad bits at the top for DEPTH_COMPONENT24, but we need it
at the bottom for texturing.  Using the format with stencil probably means
we won't be able to do Z24 and separate S8, but I wasn't planning on
supporting that anyway.

Fixes hiz-depth-read-fbo-d24-s0

src/gallium/drivers/vc5/vc5_formats.c

index 048fc8254f3f751f8e0810e88ccf13806b71c975..d9c7a80b3eeab4bb9fbdfcfcc1f08ad392e3db62 100644 (file)
@@ -182,7 +182,7 @@ static const struct vc5_format vc5_format_table[] = {
         FORMAT(R9G9B9E5_FLOAT,    NO,           RGB9_E5,     SWIZ_XYZW, 16, 0),
 
         FORMAT(S8_UINT_Z24_UNORM, DEPTH24_STENCIL8, DEPTH24_X8, SWIZ_X001, 32, 1),
-        FORMAT(X8Z24_UNORM,       DEPTH_COMPONENT24, DEPTH24_X8, SWIZ_X001, 32, 1),
+        FORMAT(X8Z24_UNORM,       DEPTH24_STENCIL8, DEPTH24_X8, SWIZ_X001, 32, 1),
         FORMAT(S8X24_UINT,        NO,           R32F,        SWIZ_X001, 32, 1),
         FORMAT(Z32_FLOAT,         DEPTH_COMPONENT32F, R32F, SWIZ_X001, 32, 1),
         FORMAT(Z16_UNORM,         DEPTH_COMPONENT16,  DEPTH_COMP16, SWIZ_X001, 32, 1),