diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/freedreno/a6xx/fd6_blitter.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_blitter.c b/src/gallium/drivers/freedreno/a6xx/fd6_blitter.c index 1699b292d89..d2e036fe748 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_blitter.c +++ b/src/gallium/drivers/freedreno/a6xx/fd6_blitter.c @@ -505,11 +505,14 @@ emit_blit_texture(struct fd_ringbuffer *ring, const struct pipe_blit_info *info) } } -static void -emit_blit(struct fd_context *ctx, const struct pipe_blit_info *info) +static bool +fd6_blit(struct fd_context *ctx, const struct pipe_blit_info *info) { struct fd_batch *batch; + if (!can_do_blit(info)) + return false; + fd_fence_ref(ctx->base.screen, &ctx->last_fence, NULL); batch = fd_bc_alloc_batch(&ctx->screen->batch_cache, ctx, true); @@ -547,16 +550,6 @@ emit_blit(struct fd_context *ctx, const struct pipe_blit_info *info) fd_batch_flush(batch, false, false); fd_batch_reference(&batch, NULL); -} - -static bool -fd6_blit(struct fd_context *ctx, const struct pipe_blit_info *info) -{ - if (!can_do_blit(info)) { - return false; - } - - emit_blit(ctx, info); return true; } |