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>
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
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;
+}
#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);