From 391ad72812f582578db644ca2a9a0def5845360e Mon Sep 17 00:00:00 2001 From: Icecream95 Date: Fri, 10 Jul 2020 11:19:07 +1200 Subject: [PATCH] panfrost: Implement texture_barrier This is needed for KHR_blend_equation_advanced with a blend barrier. Reviewed-by: Alyssa Rosenzweig Part-of: --- src/gallium/drivers/panfrost/pan_context.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c index 0cf7b3e6e5c..27e2c35c611 100644 --- a/src/gallium/drivers/panfrost/pan_context.c +++ b/src/gallium/drivers/panfrost/pan_context.c @@ -274,6 +274,13 @@ panfrost_flush( pandecode_next_frame(); } +static void +panfrost_texture_barrier(struct pipe_context *pipe, unsigned flags) +{ + struct panfrost_context *ctx = pan_context(pipe); + panfrost_flush_all_batches(ctx, false); +} + #define DEFINE_CASE(c) case PIPE_PRIM_##c: return MALI_##c; static int @@ -1443,6 +1450,7 @@ panfrost_create_context(struct pipe_screen *screen, void *priv, unsigned flags) gallium->flush = panfrost_flush; gallium->clear = panfrost_clear; gallium->draw_vbo = panfrost_draw_vbo; + gallium->texture_barrier = panfrost_texture_barrier; gallium->set_vertex_buffers = panfrost_set_vertex_buffers; gallium->set_constant_buffer = panfrost_set_constant_buffer; -- 2.30.2