summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLucas Stach <[email protected]>2017-06-08 17:06:02 +0200
committerLucas Stach <[email protected]>2017-10-10 12:30:34 +0200
commit0ab59f120b40191c60489ebc5383d6a886697c40 (patch)
tree85483c734f1b4d529d324a9c685d52269c1819fa
parentcedab87e762aa38997a07bc8a2eb624aed584afd (diff)
etnaviv: remove flat shading workaround
It turned out not to be a hardware bug, but the shader compiler emitting wrong varying component use information. With that fixed we can turn flat shading back on. Signed-off-by: Lucas Stach <[email protected]> Reviewed-by: Philipp Zabel <[email protected]> Reviewed-by: Wladimir J. van der Laan <[email protected]>
-rw-r--r--src/gallium/drivers/etnaviv/etnaviv_rasterizer.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c b/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c
index 4990fd18025..56f2735e8a1 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_rasterizer.c
@@ -38,10 +38,6 @@ etna_rasterizer_state_create(struct pipe_context *pctx,
struct etna_rasterizer_state *cs;
struct etna_context *ctx = etna_context(pctx);
- /* Disregard flatshading on GC880+, as a HW bug there seem to disable all
- * varying interpolation if it's enabled */
- bool flatshade = ctx->screen->model < 880 ? so->flatshade : false;
-
if (so->fill_front != so->fill_back)
DBG("Different front and back fill mode not supported");
@@ -51,7 +47,7 @@ etna_rasterizer_state_create(struct pipe_context *pctx,
cs->base = *so;
- cs->PA_CONFIG = (flatshade ? VIVS_PA_CONFIG_SHADE_MODEL_FLAT : VIVS_PA_CONFIG_SHADE_MODEL_SMOOTH) |
+ cs->PA_CONFIG = (so->flatshade ? VIVS_PA_CONFIG_SHADE_MODEL_FLAT : VIVS_PA_CONFIG_SHADE_MODEL_SMOOTH) |
translate_cull_face(so->cull_face, so->front_ccw) |
translate_polygon_mode(so->fill_front) |
COND(so->point_quad_rasterization, VIVS_PA_CONFIG_POINT_SPRITE_ENABLE) |