anv: avoid initalizing TRTT stuff without sparseBinding

7da5b1caef ("anv: move trtt submissions over to the anv_async_submit")
added a hard dependency on timeline semaphore which is still optional.
And since it gates the sparseBinding feature, we should not use it if
sparseBinding is not enabled.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 7da5b1caef ("anv: move trtt submissions over to the anv_async_submit")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29779>
This commit is contained in:
Lionel Landwerlin
2024-06-19 10:55:03 +03:00
committed by Marge Bot
parent e59f8faf8a
commit 1ca97f019e
+8
View File
@@ -3249,6 +3249,10 @@ anv_device_destroy_context_or_vm(struct anv_device *device)
static VkResult
anv_device_init_trtt(struct anv_device *device)
{
if (device->physical->sparse_type != ANV_SPARSE_TYPE_TRTT ||
!device->vk.enabled_features.sparseBinding)
return VK_SUCCESS;
struct anv_trtt *trtt = &device->trtt;
VkResult result =
@@ -3270,6 +3274,10 @@ anv_device_init_trtt(struct anv_device *device)
static void
anv_device_finish_trtt(struct anv_device *device)
{
if (device->physical->sparse_type != ANV_SPARSE_TYPE_TRTT ||
!device->vk.enabled_features.sparseBinding)
return;
struct anv_trtt *trtt = &device->trtt;
anv_sparse_trtt_garbage_collect_batches(device, true);