From 329d322a16af3139e1ed6c74ec90f6408680f051 Mon Sep 17 00:00:00 2001 From: Jonathan Marek Date: Wed, 3 Jul 2019 14:08:37 -0400 Subject: [PATCH] etnaviv: fix non-pointsprite points on GC7000L Fixes these deqp tests (and more): dEQP-GLES2.functional.draw.draw_arrays.points.single_attribute dEQP-GLES2.functional.draw.draw_arrays.points.multiple_attributes dEQP-GLES2.functional.draw.draw_arrays.points.default_attribute dEQP-GLES2.functional.draw.draw_elements.points.single_attribute dEQP-GLES2.functional.draw.draw_elements.points.multiple_attributes dEQP-GLES2.functional.draw.draw_elements.points.default_attribute Signed-off-by: Jonathan Marek Reviewed-by: Christian Gmeiner --- src/gallium/drivers/etnaviv/etnaviv_shader.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/etnaviv/etnaviv_shader.c b/src/gallium/drivers/etnaviv/etnaviv_shader.c index 4664ba96b21..72796065fb6 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_shader.c +++ b/src/gallium/drivers/etnaviv/etnaviv_shader.c @@ -151,6 +151,10 @@ etna_link_shaders(struct etna_context *ctx, struct compiled_shader_state *cs, cs->VS_OUTPUT_COUNT_PSIZE = cs->VS_OUTPUT_COUNT; } + /* if fragment shader doesn't read pointcoord, disable it */ + if (link.pcoord_varying_comp_ofs == -1) + cs->PA_CONFIG &= ~VIVS_PA_CONFIG_POINT_SPRITE_ENABLE; + cs->VS_LOAD_BALANCING = vs->vs_load_balancing; cs->VS_START_PC = 0; -- 2.30.2