return anv_lookup_entrypoint(&physical_device->info, pName);
}
-static uint64_t
-anv_wsi_image_get_modifier(VkImage _image)
-{
- ANV_FROM_HANDLE(anv_image, image, _image);
- return image->drm_format_mod;
-}
-
static void
anv_wsi_signal_semaphore_for_memory(VkDevice _device,
VkSemaphore _semaphore,
return result;
physical_device->wsi_device.supports_modifiers = true;
- physical_device->wsi_device.image_get_modifier = anv_wsi_image_get_modifier;
physical_device->wsi_device.signal_semaphore_for_memory =
anv_wsi_signal_semaphore_for_memory;
physical_device->wsi_device.signal_fence_for_memory =
VkSwapchainKHR* pSwapchain)
{
ANV_FROM_HANDLE(anv_device, device, _device);
- struct wsi_device *wsi_device = &device->instance->physicalDevice.wsi_device;
+ struct wsi_device *wsi_device = &device->physical->wsi_device;
const VkAllocationCallbacks *alloc;
if (pAllocator)
alloc = pAllocator;
else
- alloc = &device->alloc;
+ alloc = &device->vk.alloc;
return wsi_common_create_swapchain(wsi_device, _device,
pCreateInfo, alloc, pSwapchain);
if (pAllocator)
alloc = pAllocator;
else
- alloc = &device->alloc;
+ alloc = &device->vk.alloc;
wsi_common_destroy_swapchain(_device, swapchain, alloc);
}
uint32_t* pImageIndex)
{
ANV_FROM_HANDLE(anv_device, device, _device);
- struct anv_physical_device *pdevice = &device->instance->physicalDevice;
- return wsi_common_acquire_next_image2(&pdevice->wsi_device, _device,
- pAcquireInfo, pImageIndex);
+ return wsi_common_acquire_next_image2(&device->physical->wsi_device,
+ _device, pAcquireInfo, pImageIndex);
}
VkResult anv_QueuePresentKHR(
const VkPresentInfoKHR* pPresentInfo)
{
ANV_FROM_HANDLE(anv_queue, queue, _queue);
- struct anv_physical_device *pdevice =
- &queue->device->instance->physicalDevice;
+ struct anv_device *device = queue->device;
+
+ if (device->debug_frame_desc) {
+ device->debug_frame_desc->frame_id++;
+ if (!device->info.has_llc) {
+ gen_clflush_range(device->debug_frame_desc,
+ sizeof(*device->debug_frame_desc));
+ }
+ }
- return wsi_common_queue_present(&pdevice->wsi_device,
+ return wsi_common_queue_present(&queue->device->physical->wsi_device,
anv_device_to_handle(queue->device),
_queue, 0,
pPresentInfo);