anv: Disable anv_bo_sync_type for Xe kmd
anv_bo_sync_type is only supported with i915, if necessary it will be implemented for Xe kmd. Signed-off-by: José Roberto de Souza <jose.souza@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22171>
This commit is contained in:

committed by
Marge Bot

parent
fdea48df5e
commit
74ff665bd0
@@ -921,12 +921,18 @@ anv_physical_device_try_create(struct vk_instance *vk_instance,
|
||||
device->sync_syncobj_type.features &= ~VK_SYNC_FEATURE_TIMELINE;
|
||||
device->sync_types[st_idx++] = &device->sync_syncobj_type;
|
||||
|
||||
if (!(device->sync_syncobj_type.features & VK_SYNC_FEATURE_CPU_WAIT))
|
||||
device->sync_types[st_idx++] = &anv_bo_sync_type;
|
||||
/* anv_bo_sync_type is only supported with i915 for now */
|
||||
if (device->info.kmd_type == INTEL_KMD_TYPE_I915) {
|
||||
if (!(device->sync_syncobj_type.features & VK_SYNC_FEATURE_CPU_WAIT))
|
||||
device->sync_types[st_idx++] = &anv_bo_sync_type;
|
||||
|
||||
if (!(device->sync_syncobj_type.features & VK_SYNC_FEATURE_TIMELINE)) {
|
||||
device->sync_timeline_type = vk_sync_timeline_get_type(&anv_bo_sync_type);
|
||||
device->sync_types[st_idx++] = &device->sync_timeline_type.sync;
|
||||
if (!(device->sync_syncobj_type.features & VK_SYNC_FEATURE_TIMELINE)) {
|
||||
device->sync_timeline_type = vk_sync_timeline_get_type(&anv_bo_sync_type);
|
||||
device->sync_types[st_idx++] = &device->sync_timeline_type.sync;
|
||||
}
|
||||
} else {
|
||||
assert(device->sync_syncobj_type.features & VK_SYNC_FEATURE_TIMELINE);
|
||||
assert(device->sync_syncobj_type.features & VK_SYNC_FEATURE_CPU_WAIT);
|
||||
}
|
||||
|
||||
device->sync_types[st_idx++] = NULL;
|
||||
@@ -3051,6 +3057,8 @@ VkResult anv_CreateDevice(
|
||||
|
||||
device->vk.command_buffer_ops = &anv_cmd_buffer_ops;
|
||||
device->vk.create_sync_for_memory = anv_create_sync_for_memory;
|
||||
if (physical_device->info.kmd_type == INTEL_KMD_TYPE_I915)
|
||||
device->vk.create_sync_for_memory = anv_create_sync_for_memory;
|
||||
vk_device_set_drm_fd(&device->vk, device->fd);
|
||||
|
||||
uint32_t num_queues = 0;
|
||||
|
@@ -65,9 +65,11 @@ anv_init_wsi(struct anv_physical_device *physical_device)
|
||||
return result;
|
||||
|
||||
physical_device->wsi_device.supports_modifiers = true;
|
||||
physical_device->wsi_device.signal_semaphore_with_memory = true;
|
||||
physical_device->wsi_device.signal_fence_with_memory = true;
|
||||
physical_device->wsi_device.get_blit_queue = anv_wsi_get_prime_blit_queue;
|
||||
if (physical_device->info.kmd_type == INTEL_KMD_TYPE_I915) {
|
||||
physical_device->wsi_device.signal_semaphore_with_memory = true;
|
||||
physical_device->wsi_device.signal_fence_with_memory = true;
|
||||
}
|
||||
|
||||
physical_device->vk.wsi_device = &physical_device->wsi_device;
|
||||
|
||||
|
Reference in New Issue
Block a user