[Mesa-dev] [PATCH 5/8] radeonsi: Invalidate the L2 cache on framebuffer change.
Marek Olšák
maraeo at gmail.com
Wed Sep 23 17:22:23 PDT 2015
On Fri, Sep 4, 2015 at 9:47 PM, Bas Nieuwenhuizen
<bas at basnieuwenhuizen.nl> wrote:
> This is needed by DCC when using compressed textures.
>
> Signed-off-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
> ---
> src/gallium/drivers/radeonsi/si_state.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
> index 5c9c866..3e11922 100644
> --- a/src/gallium/drivers/radeonsi/si_state.c
> +++ b/src/gallium/drivers/radeonsi/si_state.c
> @@ -2114,6 +2114,8 @@ static void si_set_framebuffer_state(struct pipe_context *ctx,
> */
> sctx->b.flags |= SI_CONTEXT_INV_TC_L1 |
> SI_CONTEXT_INV_TC_L2 |
> + SI_CONTEXT_PS_PARTIAL_FLUSH |
> + SI_CONTEXT_FLUSH_WITH_INV_L2 |
This may work, but I think it does too much.
The only hardware requirement I know of is that
CACHE_FLUSH_AND_INV_EVENT must be emitted before and after
DCC_DECOMPRESS. Is there any case where this is not sufficient?
Marek
More information about the mesa-dev
mailing list