anv: Implement Xe version of anv_physical_device_get_parameters()

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/21885>
This commit is contained in:
José Roberto de Souza 2023-02-09 10:09:16 -08:00 committed by Marge Bot
parent 1538a28803
commit a311c031f6
3 changed files with 23 additions and 1 deletions

View file

@ -793,7 +793,15 @@ anv_physical_device_init_queue_families(struct anv_physical_device *pdevice)
static VkResult
anv_physical_device_get_parameters(struct anv_physical_device *device)
{
return anv_i915_physical_device_get_parameters(device);
switch (device->info.kmd_type) {
case INTEL_KMD_TYPE_I915:
return anv_i915_physical_device_get_parameters(device);
case INTEL_KMD_TYPE_XE:
return anv_xe_physical_device_get_parameters(device);
default:
unreachable("Missing");
return VK_ERROR_UNKNOWN;
}
}
static VkResult

View file

@ -45,3 +45,13 @@ VkResult anv_xe_device_setup_vm(struct anv_device *device)
device->vm_id = create.vm_id;
return VK_SUCCESS;
}
VkResult
anv_xe_physical_device_get_parameters(struct anv_physical_device *device)
{
device->has_exec_timeline = true;
/* TODO: fetch max_context_priority */
device->max_context_priority = VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR;
return VK_SUCCESS;
}

View file

@ -27,6 +27,10 @@
#include "vulkan/vulkan_core.h"
struct anv_device;
struct anv_physical_device;
bool anv_xe_device_destroy_vm(struct anv_device *device);
VkResult anv_xe_device_setup_vm(struct anv_device *device);
VkResult
anv_xe_physical_device_get_parameters(struct anv_physical_device *device);