summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/panfrost/ci
diff options
context:
space:
mode:
authorTomeu Vizoso <[email protected]>2019-05-14 17:28:17 +0200
committerAlyssa Rosenzweig <[email protected]>2019-06-05 14:35:48 -0700
commitde5c8829732d6cd74e6985f80eb01fe105464799 (patch)
tree7d8da7d72d604054f91712c9bb33f44f7c650120 /src/gallium/drivers/panfrost/ci
parent2adf35e4f50e0d8439ee12151bbb65427335625e (diff)
panfrost: Reload framebuffer contents if there's no clear
If by flush time the client hasn't submitted a clear, add jobs for reloading the framebuffer contents as the first draw in the frame. This is required by programs such as Weston which don't do clears and rely on the previous contents of the framebuffer being there. Reloading the whole framebuffer on every frame without regards to what is needed or what is going to be covered is very inefficient, but future work will introduce support for damage regions and partial updates so we know what needs to be actually reloaded. Fixes quite a few tests in dEQP-EGL.functional.buffer_age.*. [Alyssa: The context is that tilers do an implicit glClear() on every frame, whether you asked them to or not. If you want a clear, this is very efficient. But if you don't, you have to explicitly blit the backbuffer back into tile memory, accomplished by a dummy texturing draw. This patch generates that draw via u_blitter, although we could do a bit better ourselves by eliding the vertex job. This fixes "black rectangles in Weston/sway" as well as "video not displaying when UI visible in mpv"] Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium/drivers/panfrost/ci')
0 files changed, 0 insertions, 0 deletions