winevulkan: Implement VK_KHR_external_fence_capabilities.
We don't support any handle type yet. Signed-off-by: Józef Kucia <jkucia@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
d945c1ea0e
commit
57bb5cce75
|
@ -179,7 +179,7 @@
|
|||
@ stub vkGetPhysicalDeviceDisplayPlanePropertiesKHR
|
||||
@ stub vkGetPhysicalDeviceDisplayPropertiesKHR
|
||||
@ stub vkGetPhysicalDeviceExternalBufferProperties
|
||||
@ stub vkGetPhysicalDeviceExternalFenceProperties
|
||||
@ stdcall vkGetPhysicalDeviceExternalFenceProperties(ptr ptr ptr) winevulkan.wine_vkGetPhysicalDeviceExternalFenceProperties
|
||||
@ stub vkGetPhysicalDeviceExternalSemaphoreProperties
|
||||
@ stdcall vkGetPhysicalDeviceFeatures(ptr ptr) winevulkan.wine_vkGetPhysicalDeviceFeatures
|
||||
@ stdcall vkGetPhysicalDeviceFeatures2(ptr ptr) winevulkan.wine_vkGetPhysicalDeviceFeatures2
|
||||
|
|
|
@ -89,7 +89,6 @@ BLACKLISTED_EXTENSIONS = [
|
|||
"VK_EXT_validation_features",
|
||||
"VK_EXT_validation_flags",
|
||||
"VK_KHR_display",
|
||||
"VK_KHR_external_fence_capabilities",
|
||||
"VK_KHR_external_memory_capabilities",
|
||||
"VK_KHR_get_surface_capabilities2",
|
||||
"VK_KHR_surface_protected_capabilities",
|
||||
|
@ -164,8 +163,9 @@ FUNCTION_OVERRIDES = {
|
|||
"vkCreateDevice" : {"dispatch" : True, "driver" : False, "thunk" : False},
|
||||
"vkDestroyInstance" : {"dispatch" : False, "driver" : True, "thunk" : False },
|
||||
"vkEnumerateDeviceExtensionProperties" : {"dispatch" : True, "driver" : False, "thunk" : False},
|
||||
"vkEnumeratePhysicalDevices" : {"dispatch" : True, "driver" : False, "thunk" : False},
|
||||
"vkEnumeratePhysicalDeviceGroups" : {"dispatch" : True, "driver" : False, "thunk" : False},
|
||||
"vkEnumeratePhysicalDevices" : {"dispatch" : True, "driver" : False, "thunk" : False},
|
||||
"vkGetPhysicalDeviceExternalFenceProperties" : {"dispatch" : False, "driver" : False, "thunk" : False},
|
||||
|
||||
# Device functions
|
||||
"vkAllocateCommandBuffers" : {"dispatch" : True, "driver" : False, "thunk" : False},
|
||||
|
@ -196,6 +196,9 @@ FUNCTION_OVERRIDES = {
|
|||
"vkGetSwapchainImagesKHR": {"dispatch" : True, "driver" : True, "thunk" : True},
|
||||
"vkQueuePresentKHR": {"dispatch" : True, "driver" : True, "thunk" : True},
|
||||
|
||||
# VK_KHR_external_fence_capabilities
|
||||
"vkGetPhysicalDeviceExternalFencePropertiesKHR" : {"dispatch" : False, "driver" : False, "thunk" : False},
|
||||
|
||||
# VK_KHR_device_group_creation
|
||||
"vkEnumeratePhysicalDeviceGroupsKHR" : {"dispatch" : True, "driver" : False, "thunk" : False},
|
||||
|
||||
|
|
|
@ -1253,6 +1253,24 @@ VkResult WINAPI wine_vkEnumeratePhysicalDeviceGroupsKHR(VkInstance instance,
|
|||
instance->funcs.p_vkEnumeratePhysicalDeviceGroupsKHR, count, properties);
|
||||
}
|
||||
|
||||
void WINAPI wine_vkGetPhysicalDeviceExternalFenceProperties(VkPhysicalDevice phys_dev,
|
||||
const VkPhysicalDeviceExternalFenceInfo *fence_info, VkExternalFenceProperties *properties)
|
||||
{
|
||||
TRACE("%p, %p, %p\n", phys_dev, fence_info, properties);
|
||||
properties->exportFromImportedHandleTypes = 0;
|
||||
properties->compatibleHandleTypes = 0;
|
||||
properties->externalFenceFeatures = 0;
|
||||
}
|
||||
|
||||
void WINAPI wine_vkGetPhysicalDeviceExternalFencePropertiesKHR(VkPhysicalDevice phys_dev,
|
||||
const VkPhysicalDeviceExternalFenceInfo *fence_info, VkExternalFenceProperties *properties)
|
||||
{
|
||||
TRACE("%p, %p, %p\n", phys_dev, fence_info, properties);
|
||||
properties->exportFromImportedHandleTypes = 0;
|
||||
properties->compatibleHandleTypes = 0;
|
||||
properties->externalFenceFeatures = 0;
|
||||
}
|
||||
|
||||
BOOL WINAPI DllMain(HINSTANCE hinst, DWORD reason, void *reserved)
|
||||
{
|
||||
TRACE("%p, %u, %p\n", hinst, reason, reserved);
|
||||
|
|
|
@ -3544,6 +3544,8 @@ static const struct vulkan_func vk_instance_dispatch_table[] =
|
|||
{"vkEnumeratePhysicalDeviceGroups", &wine_vkEnumeratePhysicalDeviceGroups},
|
||||
{"vkEnumeratePhysicalDeviceGroupsKHR", &wine_vkEnumeratePhysicalDeviceGroupsKHR},
|
||||
{"vkEnumeratePhysicalDevices", &wine_vkEnumeratePhysicalDevices},
|
||||
{"vkGetPhysicalDeviceExternalFenceProperties", &wine_vkGetPhysicalDeviceExternalFenceProperties},
|
||||
{"vkGetPhysicalDeviceExternalFencePropertiesKHR", &wine_vkGetPhysicalDeviceExternalFencePropertiesKHR},
|
||||
{"vkGetPhysicalDeviceFeatures", &wine_vkGetPhysicalDeviceFeatures},
|
||||
{"vkGetPhysicalDeviceFeatures2", &wine_vkGetPhysicalDeviceFeatures2},
|
||||
{"vkGetPhysicalDeviceFeatures2KHR", &wine_vkGetPhysicalDeviceFeatures2KHR},
|
||||
|
@ -3708,6 +3710,7 @@ static const char * const vk_instance_extensions[] =
|
|||
{
|
||||
"VK_EXT_swapchain_colorspace",
|
||||
"VK_KHR_device_group_creation",
|
||||
"VK_KHR_external_fence_capabilities",
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
"VK_KHR_surface",
|
||||
"VK_KHR_win32_surface",
|
||||
|
|
|
@ -56,6 +56,8 @@ void WINAPI wine_vkFreeCommandBuffers(VkDevice device, VkCommandPool commandPool
|
|||
PFN_vkVoidFunction WINAPI wine_vkGetDeviceProcAddr(VkDevice device, const char *pName);
|
||||
void WINAPI wine_vkGetDeviceQueue(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue *pQueue);
|
||||
void WINAPI wine_vkGetDeviceQueue2(VkDevice device, const VkDeviceQueueInfo2 *pQueueInfo, VkQueue *pQueue);
|
||||
void WINAPI wine_vkGetPhysicalDeviceExternalFenceProperties(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo, VkExternalFenceProperties *pExternalFenceProperties);
|
||||
void WINAPI wine_vkGetPhysicalDeviceExternalFencePropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo, VkExternalFenceProperties *pExternalFenceProperties) DECLSPEC_HIDDEN;
|
||||
VkResult WINAPI wine_vkQueueSubmit(VkQueue queue, uint32_t submitCount, const VkSubmitInfo *pSubmits, VkFence fence);
|
||||
|
||||
typedef struct VkAcquireNextImageInfoKHR_host
|
||||
|
|
|
@ -182,7 +182,7 @@
|
|||
@ stub vkGetPhysicalDeviceDisplayPlanePropertiesKHR
|
||||
@ stub vkGetPhysicalDeviceDisplayPropertiesKHR
|
||||
@ stub vkGetPhysicalDeviceExternalBufferProperties
|
||||
@ stub vkGetPhysicalDeviceExternalFenceProperties
|
||||
@ stdcall -private wine_vkGetPhysicalDeviceExternalFenceProperties(ptr ptr ptr)
|
||||
@ stub vkGetPhysicalDeviceExternalSemaphoreProperties
|
||||
@ stdcall -private wine_vkGetPhysicalDeviceFeatures(ptr ptr)
|
||||
@ stdcall -private wine_vkGetPhysicalDeviceFeatures2(ptr ptr)
|
||||
|
|
|
@ -176,6 +176,8 @@
|
|||
#define VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME "VK_EXT_swapchain_colorspace"
|
||||
#define VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION 1
|
||||
#define VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME "VK_KHR_create_renderpass2"
|
||||
#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION 1
|
||||
#define VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME "VK_KHR_external_fence_capabilities"
|
||||
#define VK_KHR_MAINTENANCE2_SPEC_VERSION 1
|
||||
#define VK_KHR_MAINTENANCE2_EXTENSION_NAME "VK_KHR_maintenance2"
|
||||
#define VK_KHR_VARIABLE_POINTERS_SPEC_VERSION 1
|
||||
|
@ -5392,6 +5394,8 @@ typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2)(VkDevice, cons
|
|||
typedef void (VKAPI_PTR *PFN_vkGetImageSparseMemoryRequirements2KHR)(VkDevice, const VkImageSparseMemoryRequirementsInfo2 *, uint32_t *, VkSparseImageMemoryRequirements2 *);
|
||||
typedef void (VKAPI_PTR *PFN_vkGetImageSubresourceLayout)(VkDevice, VkImage, const VkImageSubresource *, VkSubresourceLayout *);
|
||||
typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_vkGetInstanceProcAddr)(VkInstance, const char *);
|
||||
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFenceProperties)(VkPhysicalDevice, const VkPhysicalDeviceExternalFenceInfo *, VkExternalFenceProperties *);
|
||||
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR)(VkPhysicalDevice, const VkPhysicalDeviceExternalFenceInfo *, VkExternalFenceProperties *);
|
||||
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice, VkPhysicalDeviceFeatures *);
|
||||
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2)(VkPhysicalDevice, VkPhysicalDeviceFeatures2 *);
|
||||
typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice, VkPhysicalDeviceFeatures2 *);
|
||||
|
@ -5646,6 +5650,8 @@ void VKAPI_CALL vkGetImageSparseMemoryRequirements2(VkDevice device, const VkIma
|
|||
void VKAPI_CALL vkGetImageSparseMemoryRequirements2KHR(VkDevice device, const VkImageSparseMemoryRequirementsInfo2 *pInfo, uint32_t *pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2 *pSparseMemoryRequirements);
|
||||
void VKAPI_CALL vkGetImageSubresourceLayout(VkDevice device, VkImage image, const VkImageSubresource *pSubresource, VkSubresourceLayout *pLayout);
|
||||
PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(VkInstance instance, const char *pName);
|
||||
void VKAPI_CALL vkGetPhysicalDeviceExternalFenceProperties(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo, VkExternalFenceProperties *pExternalFenceProperties);
|
||||
void VKAPI_CALL vkGetPhysicalDeviceExternalFencePropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo, VkExternalFenceProperties *pExternalFenceProperties);
|
||||
void VKAPI_CALL vkGetPhysicalDeviceFeatures(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures *pFeatures);
|
||||
void VKAPI_CALL vkGetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2 *pFeatures);
|
||||
void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2 *pFeatures);
|
||||
|
|
Loading…
Reference in New Issue