[PATCH 3/4] etnaviv: enable TS also on sampler resources

Wladimir J. van der Laan laanwj at gmail.com
Tue Apr 11 17:18:14 UTC 2017


On Tue, Nov 22, 2016 at 11:41:49AM +0100, Lucas Stach wrote:
> This might require a TS flush on single pipe chips that directly
> sample from the rendered buffer, but otherwise seems to work fine.

I'm working on a gc3000 patch that will introduce single_buffer support,
which allows directly sampling from rendered buffers, so this is not just an
issue for old single pipe chips.

So I'm not against this change, but it does complicate what I'm doing now.

This is closer to the blob's behavior though which IIRC does this too.
However what it does is tell the texture units about TSes as well, that would
be the best solution eventually...

Wladimir

> 
> Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
> ---
>  src/gallium/drivers/etnaviv/etnaviv_surface.c | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/src/gallium/drivers/etnaviv/etnaviv_surface.c b/src/gallium/drivers/etnaviv/etnaviv_surface.c
> index db4846aa060d..7ac2862e12d9 100644
> --- a/src/gallium/drivers/etnaviv/etnaviv_surface.c
> +++ b/src/gallium/drivers/etnaviv/etnaviv_surface.c
> @@ -64,12 +64,9 @@ etna_create_surface(struct pipe_context *pctx, struct pipe_resource *prsc,
>      * indicate the tile status module bypasses the memory
>      * offset and MMU. */
>  
> -   /* XXX for now, don't do TS for render textures as this path
> -    * is not stable. */
>     if (VIV_FEATURE(ctx->screen, chipFeatures, FAST_CLEAR) &&
>         VIV_FEATURE(ctx->screen, chipMinorFeatures0, MC20) &&
>         !DBG_ENABLED(ETNA_DBG_NO_TS) && !rsc->ts_bo &&
> -       !(rsc->base.bind & (PIPE_BIND_SAMPLER_VIEW)) &&
>         (rsc->levels[level].padded_width & ETNA_RS_WIDTH_MASK) == 0 &&
>         (rsc->levels[level].padded_height & ETNA_RS_HEIGHT_MASK) == 0) {
>        etna_screen_resource_alloc_ts(pctx->screen, rsc);
> -- 
> 2.10.2
> 
> _______________________________________________
> etnaviv mailing list
> etnaviv at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/etnaviv


More information about the etnaviv mailing list