Module: Mesa
Branch: main
Commit: 943909514e477a170caa1787a381755ff933f3c3
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=943909514e477a170caa1787a381755ff933f3c3

Author: Mike Blumenkrantz <[email protected]>
Date:   Fri Aug 18 10:07:37 2023 -0400

lavapipe: handle VkHostImageCopyDevicePerformanceQueryEXT

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775>

---

 src/gallium/frontends/lavapipe/lvp_formats.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/gallium/frontends/lavapipe/lvp_formats.c 
b/src/gallium/frontends/lavapipe/lvp_formats.c
index e0065173783..071657ea600 100644
--- a/src/gallium/frontends/lavapipe/lvp_formats.c
+++ b/src/gallium/frontends/lavapipe/lvp_formats.c
@@ -225,6 +225,7 @@ VKAPI_ATTR void VKAPI_CALL 
lvp_GetPhysicalDeviceFormatProperties2(
    if (perf)
       perf->optimal = VK_FALSE;
 }
+
 static VkResult lvp_get_image_format_properties(struct lvp_physical_device 
*physical_device,
                                                  const 
VkPhysicalDeviceImageFormatInfo2 *info,
                                                  VkImageFormatProperties 
*pImageFormatProperties)
@@ -365,6 +366,7 @@ VKAPI_ATTR VkResult VKAPI_CALL 
lvp_GetPhysicalDeviceImageFormatProperties2(
    const VkPhysicalDeviceExternalImageFormatInfo *external_info = NULL;
    VkExternalImageFormatProperties *external_props = NULL;
    VkSamplerYcbcrConversionImageFormatProperties *ycbcr_props = NULL;
+   VkHostImageCopyDevicePerformanceQueryEXT *hic;
    VkResult result;
    result = lvp_get_image_format_properties(physical_device, base_info,
                                              
&base_props->imageFormatProperties);
@@ -390,6 +392,11 @@ VKAPI_ATTR VkResult VKAPI_CALL 
lvp_GetPhysicalDeviceImageFormatProperties2(
       case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:
          ycbcr_props = (void *) s;
          break;
+      case VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT:
+         hic = (void*)s;
+         hic->optimalDeviceAccess = VK_TRUE;
+         hic->identicalMemoryLayout = VK_TRUE;
+         break;
       default:
          break;
       }

Reply via email to