Mesa (13.0): vulkan/wsi/x11: add support for IMMEDIATE present mode

Emil Velikov evelikov at kemper.freedesktop.org
Mon Nov 28 15:07:44 UTC 2016


Module: Mesa
Branch: 13.0
Commit: 6eceac3a029c86175c68e2759439ee070972ad79
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6eceac3a029c86175c68e2759439ee070972ad79

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Oct 26 13:05:51 2016 +1000

vulkan/wsi/x11: add support for IMMEDIATE present mode

We shouldn't be using ASYNC here, that would be used
for immediate mode, so let's implement that.

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Signed-off-by: Dave Airlie <airlied at redhat.com>
(cherry picked from commit ca035006c86a5055c8e640f49c858f04770681eb)

---

 src/vulkan/wsi/wsi_common_x11.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/vulkan/wsi/wsi_common_x11.c b/src/vulkan/wsi/wsi_common_x11.c
index 9ce3842..75eab6c 100644
--- a/src/vulkan/wsi/wsi_common_x11.c
+++ b/src/vulkan/wsi/wsi_common_x11.c
@@ -143,6 +143,7 @@ static const VkSurfaceFormatKHR formats[] = {
 };
 
 static const VkPresentModeKHR present_modes[] = {
+   VK_PRESENT_MODE_IMMEDIATE_KHR,
    VK_PRESENT_MODE_MAILBOX_KHR,
 };
 
@@ -654,7 +655,8 @@ x11_queue_present(struct wsi_swapchain *anv_chain,
    int64_t divisor = 0;
    int64_t remainder = 0;
 
-   options |= XCB_PRESENT_OPTION_ASYNC;
+   if (chain->base.present_mode == VK_PRESENT_MODE_IMMEDIATE_KHR)
+      options |= XCB_PRESENT_OPTION_ASYNC;
 
    xshmfence_reset(image->shm_fence);
 




More information about the mesa-commit mailing list