diff options
author | Lucas Stach <[email protected]> | 2017-06-08 17:06:02 +0200 |
---|---|---|
committer | Lucas Stach <[email protected]> | 2017-10-10 12:30:34 +0200 |
commit | 0ab59f120b40191c60489ebc5383d6a886697c40 (patch) | |
tree | 85483c734f1b4d529d324a9c685d52269c1819fa | |
parent | cedab87e762aa38997a07bc8a2eb624aed584afd (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.c | 6 |
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) | |