freedreno/a6xx: Front facing needs UNK3 bit
We need to set UNK3 in GRAS_CNTL and RB_RENDER_CONTROL0 for the value to be reliably delivered. Fixes: dEQP-GLES3.functional.shaders.builtin_variable.frontfacing Signed-off-by: Kristian H. Kristensen <hoegsberg@chromium.org>
This commit is contained in:
@@ -549,7 +549,8 @@ setup_stateobj(struct fd_ringbuffer *ring,
|
||||
A6XX_GRAS_CNTL_XCOORD |
|
||||
A6XX_GRAS_CNTL_YCOORD |
|
||||
A6XX_GRAS_CNTL_ZCOORD |
|
||||
A6XX_GRAS_CNTL_WCOORD));
|
||||
A6XX_GRAS_CNTL_WCOORD) |
|
||||
COND(s[FS].v->frag_face, A6XX_GRAS_CNTL_UNK3));
|
||||
|
||||
OUT_PKT4(ring, REG_A6XX_RB_RENDER_CONTROL0, 2);
|
||||
OUT_RING(ring, COND(enable_varyings, A6XX_RB_RENDER_CONTROL0_VARYING |
|
||||
@@ -559,7 +560,9 @@ setup_stateobj(struct fd_ringbuffer *ring,
|
||||
A6XX_RB_RENDER_CONTROL0_XCOORD |
|
||||
A6XX_RB_RENDER_CONTROL0_YCOORD |
|
||||
A6XX_RB_RENDER_CONTROL0_ZCOORD |
|
||||
A6XX_RB_RENDER_CONTROL0_WCOORD));
|
||||
A6XX_RB_RENDER_CONTROL0_WCOORD) |
|
||||
COND(s[FS].v->frag_face, A6XX_RB_RENDER_CONTROL0_UNK3));
|
||||
|
||||
OUT_RING(ring, COND(s[FS].v->frag_face, A6XX_RB_RENDER_CONTROL1_FACENESS));
|
||||
|
||||
OUT_PKT4(ring, REG_A6XX_SP_FS_OUTPUT_REG(0), 8);
|
||||
|
||||
Reference in New Issue
Block a user