From c5da01ee0af9766c2992d6757e8f31ef50117b09 Mon Sep 17 00:00:00 2001 From: Artem Kharytoniuk Date: Mon, 1 Apr 2024 16:28:41 +0200 Subject: icd: Add external memory properties --- icd/generated/function_definitions.h | 5 ++--- scripts/mock_icd_generator.py | 7 +++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/icd/generated/function_definitions.h b/icd/generated/function_definitions.h index e05e5ab4..64682690 100644 --- a/icd/generated/function_definitions.h +++ b/icd/generated/function_definitions.h @@ -3586,10 +3586,9 @@ static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceImageFormatProperties2KHR { auto *external_image_prop = lvl_find_mod_in_chain(pImageFormatProperties->pNext); auto *external_image_format = lvl_find_in_chain(pImageFormatInfo->pNext); - if (external_image_prop && external_image_format && external_image_format->handleType == VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID) { + if (external_image_prop && external_image_format) { external_image_prop->externalMemoryProperties.externalMemoryFeatures = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT | VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT; external_image_prop->externalMemoryProperties.compatibleHandleTypes = external_image_format->handleType; - external_image_prop->externalMemoryProperties.compatibleHandleTypes = external_image_format->handleType; } GetPhysicalDeviceImageFormatProperties(physicalDevice, pImageFormatInfo->format, pImageFormatInfo->type, pImageFormatInfo->tiling, pImageFormatInfo->usage, pImageFormatInfo->flags, &pImageFormatProperties->imageFormatProperties); @@ -3757,7 +3756,7 @@ static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHR( HANDLE handle, VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties) { -//Not a CREATE or DESTROY function + pMemoryWin32HandleProperties->memoryTypeBits = 0xFFFF; return VK_SUCCESS; } #endif /* VK_USE_PLATFORM_WIN32_KHR */ diff --git a/scripts/mock_icd_generator.py b/scripts/mock_icd_generator.py index 5f333f72..55b37124 100644 --- a/scripts/mock_icd_generator.py +++ b/scripts/mock_icd_generator.py @@ -531,10 +531,9 @@ CUSTOM_C_INTERCEPTS = { 'vkGetPhysicalDeviceImageFormatProperties2KHR': ''' auto *external_image_prop = lvl_find_mod_in_chain(pImageFormatProperties->pNext); auto *external_image_format = lvl_find_in_chain(pImageFormatInfo->pNext); - if (external_image_prop && external_image_format && external_image_format->handleType == VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID) { + if (external_image_prop && external_image_format) { external_image_prop->externalMemoryProperties.externalMemoryFeatures = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT | VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT; external_image_prop->externalMemoryProperties.compatibleHandleTypes = external_image_format->handleType; - external_image_prop->externalMemoryProperties.compatibleHandleTypes = external_image_format->handleType; } GetPhysicalDeviceImageFormatProperties(physicalDevice, pImageFormatInfo->format, pImageFormatInfo->type, pImageFormatInfo->tiling, pImageFormatInfo->usage, pImageFormatInfo->flags, &pImageFormatProperties->imageFormatProperties); @@ -1667,6 +1666,10 @@ CUSTOM_C_INTERCEPTS = { } return VK_SUCCESS; ''', +'vkGetMemoryWin32HandlePropertiesKHR': ''' + pMemoryWin32HandleProperties->memoryTypeBits = 0xFFFF; + return VK_SUCCESS; +''' } # MockICDGeneratorOptions - subclass of GeneratorOptions. -- cgit v1.2.3