panfrost: Workaround bug in partial update implementation

We can't intersect with empty regions.

Fixes: 65ae86b854 ("panfrost: Add support for KHR_partial_update()")

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
This commit is contained in:
Alyssa Rosenzweig 2019-08-13 07:19:27 -07:00
parent 46daaca55e
commit 0c56330361
1 changed files with 9 additions and 4 deletions

View File

@ -1389,10 +1389,15 @@ panfrost_draw_wallpaper(struct pipe_context *pipe)
* KHR_partial_update() spec states that trying to render outside of
* the damage region is "undefined behavior", so we should be safe.
*/
panfrost_job_intersection_scissor(batch, rsrc->damage.extent.minx,
rsrc->damage.extent.miny,
rsrc->damage.extent.maxx,
rsrc->damage.extent.maxy);
unsigned damage_width = (rsrc->damage.extent.maxx - rsrc->damage.extent.minx);
unsigned damage_height = (rsrc->damage.extent.maxy - rsrc->damage.extent.miny);
if (damage_width && damage_height) {
panfrost_job_intersection_scissor(batch, rsrc->damage.extent.minx,
rsrc->damage.extent.miny,
rsrc->damage.extent.maxx,
rsrc->damage.extent.maxy);
}
/* FIXME: Looks like aligning on a tile is not enough, but
* aligning on twice the tile size seems to works. We don't