summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/broadcom/cle/v3d_packet_v33.xml1
-rw-r--r--src/gallium/drivers/vc5/vc5_state.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/src/broadcom/cle/v3d_packet_v33.xml b/src/broadcom/cle/v3d_packet_v33.xml
index 7633ff6f3b0..8d1ff2cf3b3 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 6a90a78e2e5..d022aa84e42 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