Module: Mesa Branch: master Commit: 16e17ce04b60ac6f3d9a89535ea583fabebead7a URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=16e17ce04b60ac6f3d9a89535ea583fabebead7a
Author: Eric Anholt <e...@anholt.net> Date: Mon Jul 24 14:45:49 2017 -0700 broadcom/vc4: Scissor blits performed using the rendering engine. Without this, a BlitFramebuffer would mark the whole framebuffer as being changed (so we emit loads/stores of all of it) rather than just the modified subset. --- src/gallium/drivers/vc4/vc4_blit.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/gallium/drivers/vc4/vc4_blit.c b/src/gallium/drivers/vc4/vc4_blit.c index 0e4ab5bfa0..7f4c76968e 100644 --- a/src/gallium/drivers/vc4/vc4_blit.c +++ b/src/gallium/drivers/vc4/vc4_blit.c @@ -195,6 +195,15 @@ vc4_render_blit(struct pipe_context *ctx, struct pipe_blit_info *info) return false; } + /* Enable the scissor, so we get a minimal set of tiles rendered. */ + if (!info->scissor_enable) { + info->scissor_enable = true; + info->scissor.minx = info->dst.box.x; + info->scissor.miny = info->dst.box.y; + info->scissor.maxx = info->dst.box.x + info->dst.box.width; + info->scissor.maxy = info->dst.box.y + info->dst.box.height; + } + vc4_blitter_save(vc4); util_blitter_blit(vc4->blitter, info); _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit