pvr: split out device tile buffers teardown

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38744>
This commit is contained in:
Luigi Santivetti 2025-09-19 21:50:24 +01:00 committed by Marge Bot
parent b42522a719
commit ef73c58918
2 changed files with 7 additions and 3 deletions

View file

@ -724,9 +724,7 @@ static void pvr_device_finish_tile_buffer_state(struct pvr_device *device)
* allocated.
*/
simple_mtx_destroy(&device->tile_buffer_state.mtx);
for (uint32_t i = 0; i < device->tile_buffer_state.buffer_count; i++)
pvr_bo_free(device, device->tile_buffer_state.buffers[i]);
pvr_device_free_tile_buffer_state(device);
}
/** Gets the amount of memory to allocate per-core for a tile buffer. */

View file

@ -180,6 +180,12 @@ uint32_t pvr_calc_fscommon_size_and_tiles_in_flight(
VkResult pvr_device_tile_buffer_ensure_cap(struct pvr_device *device,
uint32_t capacity);
static inline void pvr_device_free_tile_buffer_state(struct pvr_device *device)
{
for (uint32_t i = 0; i < device->tile_buffer_state.buffer_count; i++)
pvr_bo_free(device, device->tile_buffer_state.buffers[i]);
}
VkResult pvr_pds_compute_shader_create_and_upload(
struct pvr_device *device,
struct pvr_pds_compute_shader_program *program,