Commit Graph

129 Commits

Author SHA1 Message Date
Józef Kucia ec8a3a78b8 winevulkan: Convert VkPhysicalDeviceFeatures2 in VkDeviceCreateInfo chain.
We should teach make_vulkan to handle pNext chains...

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-20 20:17:04 +01:00
Józef Kucia f3f38eb8c7 winevulkan: Trace structure types as decimal numbers.
In Vulkan headers, structure types are specified as decimal numbers.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-20 20:17:02 +01:00
Józef Kucia ccfdf651d1 winevulkan: Enable Vulkan 1.1.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-20 20:16:59 +01:00
Józef Kucia 44c2de5ba4 winevulkan: Enable a few extensions promoted to core in Vulkan 1.1.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-20 20:16:57 +01:00
Józef Kucia 8692cf6e59 winevulkan: Implement VK_KHR_external_semaphore_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>
2019-03-20 20:16:54 +01:00
Józef Kucia 76d2746306 winevulkan: Implement VK_KHR_external_memory_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>
2019-03-20 20:16:50 +01:00
Józef Kucia 57bb5cce75 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>
2019-03-20 20:16:47 +01:00
Józef Kucia d71532df22 winevulkan: Implement VK_EXT_host_query_reset.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-19 18:32:28 +01:00
Józef Kucia bea86f0180 winevulkan: Enable VK_EXT_swapchain_colorspace.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-19 18:32:23 +01:00
Józef Kucia 0d20471a76 winevulkan: Use blacklist also for instance extensions.
Allows us to treat extensions in a uniform way.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-19 18:32:19 +01:00
Józef Kucia 3e4189e3ad winevulkan: Update vk.xml to 1.1.104.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-19 18:32:13 +01:00
Józef Kucia 1eaa59765f winevulkan: Use VkBase{In, Out}Structure instead of custom structure.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-01 17:48:26 +01:00
Józef Kucia eb39d3dbca winevulkan: Update vk.xml to 1.1.94.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 12:27:16 +01:00
Michał Janiszewski 83fd23347a winevulkan: Print all the arguments in make_vulkan.
Signed-off-by: Michał Janiszewski <janisozaur@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 20:13:51 +02:00
Michał Janiszewski ad242e7d41 winevulkan: Remove duplicate format_string in make_vulkan.
Signed-off-by: Michał Janiszewski <janisozaur@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 20:13:50 +02:00
Józef Kucia 648bd17b81 winevulkan: Update vk.xml to 1.1.88.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:58:05 +02:00
Michał Janiszewski 66e0e07152 winevulkan: Remove unused variable in make_vulkan.
Signed-off-by: Michał Janiszewski <janisozaur@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-12 17:06:47 +02:00
Józef Kucia 5d071ce03d winevulkan: Update vk.xml to 1.1.86.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-05 10:48:50 -05:00
Józef Kucia b5a79ca5d0 winevulkan: Parse enum value aliases.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-05 10:48:47 -05:00
Józef Kucia 94a4dadd9a winevulkan: Check if conversion is required for pNext chains.
Unhandled conversions are only logged for now.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-05 10:48:45 -05:00
Józef Kucia 6e87235523 winevulkan: Remove parsing of validextensionstructs.
It was replaced by structextends.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-05 10:48:41 -05:00
Józef Kucia fcc10f3012 winevulkan: Enable vkGetDeviceProcAddr() quirk for idTech engine.
For DOOM VFR.

Based on a patch by Andrew Eikum.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-10 22:35:37 +02:00
Józef Kucia 3cad90e334 winevulkan: Trace VkApplicationInfo in wine_vkCreateInstance().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-10 22:35:35 +02:00
Józef Kucia 4907ffdf2a winevulkan: Check if device extensions are supported.
Return VK_ERROR_EXTENSION_NOT_PRESENT for unsupported extensions.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-10 22:35:31 +02:00
Józef Kucia e84999bd7a winevulkan: Check if instance extensions are supported.
Return VK_ERROR_EXTENSION_NOT_PRESENT for unsupported extensions.

Fixes crashes in some Vulkan CTS tests.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-10 22:35:27 +02:00
Józef Kucia b62d4ea6ed winevulkan: Free all command buffers when vkAllocateCommandBuffers() fails.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:24 +02:00
Józef Kucia 079d2ec40d winevulkan: Fix potential memory leaks when a command pool is destroyed.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:24 +02:00
Józef Kucia 6f8d02b0f3 winevulkan: Wrap VkCommandPools.
We need to wrap VkCommandPools to track allocated VkCommandBuffers.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-30 19:55:24 +02:00
Józef Kucia e3de7f7774 winevulkan: Trace properties for created devices.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-28 11:09:02 +02:00
Francois Gouget 67bd05669d winevulkan: Spelling fix in a perl comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:01:56 +02:00
Józef Kucia 6d80924ae4 winevulkan: Properly retrieve queues that were created with non-zero flags.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-20 15:56:05 +02:00
Jacek Caban 494253e1ce winevulkan: Mark ICD and thunking functions as private.
We don't need them in importlib. We use them only for vulkan-1
forwarding, which doesn't need an importlib.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 09:47:48 +02:00
Jacek Caban bea52787d6 winevulkan: Expose driver vkGetInstanceProcAddr via winevulkan exports.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 09:47:48 +02:00
Józef Kucia 1e24f7da55 winevulkan: Correctly allocate memory for VkCommandBuffers (Coverity).
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 09:40:06 +02:00
Jacek Caban 427f359910 wine/vulkan.h: Properly declare enum values that use value attribute in spec.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-20 18:36:55 +02:00
Józef Kucia a77416c47a winevulkan: Avoid FIXMEs for unsupported Vulkan functions.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-17 17:39:56 +02:00
Józef Kucia adb926d5a5 winevulkan: Generate get_vulkan_driver_*_proc_addr() helper functions.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:45 +02:00
Józef Kucia f59925416a winevulkan: Remove vkAcquireNextImageKHR() from Vulkan driver functions.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:45 +02:00
Józef Kucia 5be428f560 winevulkan: Remove vkEnumerateInstanceVersion() from Vulkan driver functions.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:45 +02:00
Roderick Colenbrander d1d9d5495d winevulkan: Implement vkGetDeviceQueue2.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:45 +02:00
Alex Henrie a8df2c61d8 winevulkan: Correct spelling of "of" in a comment.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 21:28:44 +02:00
Józef Kucia 1354e3535a vulkan-1: Forward all functions directly to winevulkan.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia b75a117822 winevulkan: Implement vkEnumerateInstanceLayerProperties() in ICD.
Other Vulkan ICDs implement this function.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia 036376e6a5 winevulkan: Downgrade ERR() to WARN() in wine_vkEnumerateInstanceExtensionProperties().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia 8bd787c3b3 winevulkan: Use WINE_VK_VERSION to limit supported features.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia a45b04273f winevulkan: Implement vkEnumerateInstanceVersion().
The current version of Vulkan Loader returns VK_API_VERSION_1_1.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia fae218310c winevulkan: Implement VK_KHR_device_group.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia 960e52e12f winevulkan: Add driver functions for VK_KHR_device_group.
In order to unwrap VkSurface.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia cc0606175b winevulkan: Allow running make_vulkan from any working directory.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-13 17:20:43 +02:00
Józef Kucia 29467f9da5 winevulkan: Add TRACE() for created devices.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-12 12:57:54 +02:00