---
 src/amd/vulkan/radv_device.c |  2 ++
 src/amd/vulkan/radv_image.c  | 15 +++++++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 722c768..58a4604 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -2159,6 +2159,8 @@ VkResult radv_alloc_memory(VkDevice                       
 _device,
        if (dedicate_info) {
                mem->image = radv_image_from_handle(dedicate_info->image);
                mem->buffer = radv_buffer_from_handle(dedicate_info->buffer);
+               if (mem->image->surface.flags & RADEON_SURF_SCANOUT)
+                       flags |= RADEON_FLAG_IMPLICIT_SYNC;
        } else {
                mem->image = NULL;
                mem->buffer = NULL;
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c
index 163d35d..b4abec3 100644
--- a/src/amd/vulkan/radv_image.c
+++ b/src/amd/vulkan/radv_image.c
@@ -1113,11 +1113,22 @@ radv_CreateImage(VkDevice device,
                 const VkAllocationCallbacks *pAllocator,
                 VkImage *pImage)
 {
+       bool scanout = false;
+       vk_foreach_struct_const(s, pCreateInfo->pNext) {
+               switch (s->sType) {
+               case WSI_STRUCTURE_TYPE_IMAGE_CREATE_INFO:
+                       scanout = true;
+                       break;
+               default:
+                       break;
+               }
+       }
+
        return radv_image_create(device,
                                 &(struct radv_image_create_info) {
                                         .vk_info = pCreateInfo,
-                                                .scanout = false,
-                                                },
+                                        .scanout = scanout,
+                                },
                                 pAllocator,
                                 pImage);
 }
-- 
2.5.0.400.gff86faf

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to