freedreno: Don't tell the blitter what it can't do
Call ctx->blit() and let it reject blits it can't do instead of giving up on stencil blits and blits u_blitter can't do. Reviewed-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Kristian H. Kristensen <hoegsberg@chromium.org>
This commit is contained in:
@@ -258,6 +258,9 @@ fd_blit(struct pipe_context *pctx, const struct pipe_blit_info *blit_info)
|
||||
if (info.render_condition_enable && !fd_render_condition_check(pctx))
|
||||
return;
|
||||
|
||||
if (ctx->blit && ctx->blit(ctx, &info))
|
||||
return;
|
||||
|
||||
if (info.mask & PIPE_MASK_S) {
|
||||
DBG("cannot blit stencil, skipping");
|
||||
info.mask &= ~PIPE_MASK_S;
|
||||
@@ -270,8 +273,7 @@ fd_blit(struct pipe_context *pctx, const struct pipe_blit_info *blit_info)
|
||||
return;
|
||||
}
|
||||
|
||||
if (!(ctx->blit && ctx->blit(ctx, &info)))
|
||||
fd_blitter_blit(ctx, &info);
|
||||
fd_blitter_blit(ctx, &info);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user