panfrost: Extend pan_fb_info to allow passing a tile enable map
We will use this tile enable map to implement KHR_partial_update and replace the current solution where the preload process is done by inverting damage regions, merging the resulting inverted regions and issuing preloading draws for those rectangles. Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10033>
This commit is contained in:

committed by
Marge Bot

parent
96b71a59c0
commit
c52c3e2424
@@ -933,5 +933,10 @@ pan_emit_fragment_job(const struct panfrost_device *dev,
|
||||
payload.bound_max_x = fb->extent.maxx >> MALI_TILE_SHIFT;
|
||||
payload.bound_max_y = fb->extent.maxy >> MALI_TILE_SHIFT;
|
||||
payload.framebuffer = fbd;
|
||||
if (fb->tile_map.base) {
|
||||
payload.has_tile_enable_map = true;
|
||||
payload.tile_enable_map = fb->tile_map.base;
|
||||
payload.tile_enable_map_row_stride = fb->tile_map.stride;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -102,6 +102,11 @@ struct pan_fb_info {
|
||||
unsigned rt_count;
|
||||
struct pan_fb_color_attachment rts[8];
|
||||
struct pan_fb_zs_attachment zs;
|
||||
|
||||
struct {
|
||||
unsigned stride;
|
||||
mali_ptr base;
|
||||
} tile_map;
|
||||
};
|
||||
|
||||
unsigned
|
||||
|
Reference in New Issue
Block a user