From ca949e00d803abd7500192cc4804e77763c0aff3 Mon Sep 17 00:00:00 2001 From: Lucas Stach Date: Fri, 29 Sep 2017 14:17:41 +0200 Subject: etnaviv: update HW headers and fix provoking vertex Now that the real meaning of the 2 bits in PA_SYSTEM_MODE is known, we can set them according to the rasterizer state, which fixes uses that are setting provoking vertex first. Signed-off-by: Lucas Stach Reviewed-by: Wladimir J. van der Laan Reviewed-by: Christian Gmeiner --- src/gallium/drivers/etnaviv/etnaviv_rasterizer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/gallium/drivers/etnaviv/etnaviv_rasterizer.c') diff --git a/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c b/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c index 56f2735e8a1..c8627b1a9ab 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c +++ b/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c @@ -61,7 +61,8 @@ etna_rasterizer_state_create(struct pipe_context *pctx, /* XXX anything else? */ /* XXX bottom_edge_rule */ cs->PA_SYSTEM_MODE = - COND(so->half_pixel_center, VIVS_PA_SYSTEM_MODE_UNK0 | VIVS_PA_SYSTEM_MODE_UNK4); + COND(!so->flatshade_first, VIVS_PA_SYSTEM_MODE_PROVOKING_VERTEX_LAST) | + COND(so->half_pixel_center, VIVS_PA_SYSTEM_MODE_HALF_PIXEL_CENTER); /* so->scissor overrides the scissor, defaulting to the whole framebuffer, * with the scissor state */ -- cgit v1.2.3