From f0ee7d6ba85c0695e276b61c8c8113552d8bde6c Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 2 Oct 2017 14:09:56 -0700 Subject: [PATCH] broadcom/vc5: Add support for GL_EXT_provoking_vertex. The bit was missing from the spec, but it's there in the simulator. Fixes the piglit clipflat test. --- src/broadcom/cle/v3d_packet_v33.xml | 1 + src/gallium/drivers/vc5/vc5_emit.c | 3 +++ src/gallium/drivers/vc5/vc5_screen.c | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/broadcom/cle/v3d_packet_v33.xml b/src/broadcom/cle/v3d_packet_v33.xml index ba5ceb0d92e..1c8ffe480ea 100644 --- a/src/broadcom/cle/v3d_packet_v33.xml +++ b/src/broadcom/cle/v3d_packet_v33.xml @@ -308,6 +308,7 @@ + diff --git a/src/gallium/drivers/vc5/vc5_emit.c b/src/gallium/drivers/vc5/vc5_emit.c index 7f78817bf91..475db7bc868 100644 --- a/src/gallium/drivers/vc5/vc5_emit.c +++ b/src/gallium/drivers/vc5/vc5_emit.c @@ -248,6 +248,9 @@ vc5_emit_state(struct pipe_context *pctx) config.rasterizer_oversample_mode = vc5->rasterizer->base.multisample; + config.direct3d_provoking_vertex = + vc5->rasterizer->base.flatshade_first; + config.blend_enable = vc5->blend->rt[0].blend_enable; config.early_z_updates_enable = true; diff --git a/src/gallium/drivers/vc5/vc5_screen.c b/src/gallium/drivers/vc5/vc5_screen.c index 792d430722b..66180d27ed5 100644 --- a/src/gallium/drivers/vc5/vc5_screen.c +++ b/src/gallium/drivers/vc5/vc5_screen.c @@ -111,6 +111,7 @@ vc5_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_ALLOW_MAPPED_BUFFERS_DURING_EXECUTION: case PIPE_CAP_COMPUTE: case PIPE_CAP_DRAW_INDIRECT: + case PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION: return 1; case PIPE_CAP_CONSTANT_BUFFER_OFFSET_ALIGNMENT: @@ -156,7 +157,6 @@ vc5_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_TEXTURE_MIRROR_CLAMP: case PIPE_CAP_MIXED_COLORBUFFER_FORMATS: case PIPE_CAP_SEAMLESS_CUBE_MAP: - case PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION: case PIPE_CAP_VERTEX_BUFFER_OFFSET_4BYTE_ALIGNED_ONLY: case PIPE_CAP_VERTEX_BUFFER_STRIDE_4BYTE_ALIGNED_ONLY: case PIPE_CAP_VERTEX_ELEMENT_SRC_OFFSET_4BYTE_ALIGNED_ONLY: -- 2.30.2