diff options
author | Wladimir J. van der Laan <[email protected]> | 2017-11-01 18:19:02 +0100 |
---|---|---|
committer | Christian Gmeiner <[email protected]> | 2017-11-06 21:30:54 +0100 |
commit | 93ba3f29bbfd996dea5ecd053501800c11fc7f1c (patch) | |
tree | 0201d4cf5e47b2af8e46ab36824e804e17e3c212 /src/gallium/drivers/etnaviv/etnaviv_emit.c | |
parent | f1e1c60ff69dc54f3db00afa16237ff04dd32096 (diff) |
etnaviv: ASTC texture support
Add ASTC texture support for hardware that supports this
(currently only GC3000 on i.MX6qp is known to have this).
Signed-off-by: Wladimir J. van der Laan <[email protected]>
Reviewed-by: Christian Gmeiner <[email protected]>
Diffstat (limited to 'src/gallium/drivers/etnaviv/etnaviv_emit.c')
-rw-r--r-- | src/gallium/drivers/etnaviv/etnaviv_emit.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gallium/drivers/etnaviv/etnaviv_emit.c b/src/gallium/drivers/etnaviv/etnaviv_emit.c index 5397aa33ce3..d313af60cf4 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_emit.c +++ b/src/gallium/drivers/etnaviv/etnaviv_emit.c @@ -703,6 +703,14 @@ etna_emit_state(struct etna_context *ctx) /*03828*/ EMIT_STATE(GL_VARYING_COMPONENT_USE(x), ctx->shader_state.GL_VARYING_COMPONENT_USE[x]); } } + if (unlikely(ctx->specs.tex_astc && (dirty & (ETNA_DIRTY_SAMPLER_VIEWS)))) { + for (int x = 0; x < VIVS_TE_SAMPLER__LEN; ++x) { + if ((1 << x) & active_samplers) { + struct etna_sampler_view *sv = etna_sampler_view(ctx->sampler_view[x]); + /*10500*/ EMIT_STATE(NTE_SAMPLER_ASTC0(x), sv->TE_SAMPLER_ASTC0); + } + } + } etna_coalesce_end(stream, &coalesce); /* end only EMIT_STATE */ |