diff options
author | Eric Anholt <[email protected]> | 2017-12-19 14:23:06 -0800 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2017-12-19 15:55:14 -0800 |
commit | 22ceb1f99b5ae62d23200f4fecea8b62ab745318 (patch) | |
tree | eb688be057277b668e54dbd59439b63171d71354 | |
parent | 200562ad0121c6723100ae8df5b28d0d75df4a8f (diff) |
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.
-rw-r--r-- | src/broadcom/cle/v3d_packet_v33.xml | 1 | ||||
-rw-r--r-- | src/gallium/drivers/vc5/vc5_state.c | 3 |
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 |