Mesa (master): broadcom/vc5: Add missing setting of the UIF XOR disable flag in textures.

Eric Anholt anholt at kemper.freedesktop.org
Tue Dec 19 23:57:36 UTC 2017


Module: Mesa
Branch: master
Commit: 22ceb1f99b5ae62d23200f4fecea8b62ab745318
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=22ceb1f99b5ae62d23200f4fecea8b62ab745318

Author: Eric Anholt <eric at anholt.net>
Date:   Tue Dec 19 14:23:06 2017 -0800

broadcom/vc5: Add missing setting of the UIF XOR disable flag in textures.

Most piglit textures happened to work out by RGBW not changing in that
bit, but it did cause failures in RGBA16F fbo-generatemipmap-formats.

---

 src/broadcom/cle/v3d_packet_v33.xml | 1 +
 src/gallium/drivers/vc5/vc5_state.c | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/src/broadcom/cle/v3d_packet_v33.xml b/src/broadcom/cle/v3d_packet_v33.xml
index 7633ff6f3b..8d1ff2cf3b 100644
--- a/src/broadcom/cle/v3d_packet_v33.xml
+++ b/src/broadcom/cle/v3d_packet_v33.xml
@@ -817,6 +817,7 @@
   </struct>
 
   <struct name="Texture Shader State">
+    <field name="UIF XOR disable" size="1" start="255" type="bool"/>
     <field name="Level 0 is strictly UIF" size="1" start="254" type="bool"/>
     <field name="Level 0 XOR enable" size="1" start="252" type="bool"/>
     <field name="Level 0 UB_PAD" size="4" start="248" type="uint"/>
diff --git a/src/gallium/drivers/vc5/vc5_state.c b/src/gallium/drivers/vc5/vc5_state.c
index 6a90a78e2e..d022aa84e4 100644
--- a/src/gallium/drivers/vc5/vc5_state.c
+++ b/src/gallium/drivers/vc5/vc5_state.c
@@ -693,6 +693,9 @@ vc5_create_sampler_view(struct pipe_context *pctx, struct pipe_resource *prsc,
                         tex.swizzle_a = translate_swizzle(PIPE_SWIZZLE_W);
                 }
 
+                tex.uif_xor_disable = (rsc->slices[0].tiling ==
+                                       VC5_TILING_UIF_NO_XOR);
+
                 /* Since other platform devices may produce UIF images even
                  * when they're not big enough for V3D to assume they're UIF,
                  * we force images with level 0 as UIF to be always treated




More information about the mesa-commit mailing list