zink: determine whether the vulkan driver requires mesa flush wsi
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Thu, 25 Feb 2021 15:22:09 +0000 (10:22 -0500)
committerMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Mon, 15 Mar 2021 14:58:21 +0000 (10:58 -0400)
this is used for ANV's implicit fencing (until we get wsi)

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9290>

src/gallium/drivers/zink/zink_screen.c
src/gallium/drivers/zink/zink_screen.h

index a86da07..8e5561c 100644 (file)
@@ -1215,7 +1215,9 @@ check_device_needs_mesa_wsi(struct zink_screen *screen)
        screen->info.driver_props.driverID == VK_DRIVER_ID_MESA_RADV_KHR
       ) {
       screen->needs_mesa_wsi = true;
-       }
+   } else if (screen->info.driver_props.driverID == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR)
+      screen->needs_mesa_flush_wsi = true;
+
 }
 
 static void
index a7d00f0..c68be1f 100644 (file)
@@ -91,6 +91,7 @@ struct zink_screen {
    uint32_t cur_custom_border_color_samplers;
 
    bool needs_mesa_wsi;
+   bool needs_mesa_flush_wsi;
 
    PFN_vkGetPhysicalDeviceFeatures2 vk_GetPhysicalDeviceFeatures2;
    PFN_vkGetPhysicalDeviceProperties2 vk_GetPhysicalDeviceProperties2;