From 937230564d367cd576028d119a35c10e9abd9c73 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 1 Mar 2016 01:53:48 +0100 Subject: [PATCH] move more code to vksym.h --- gfx/common/vksym.h | 25 ++++++++++++++- gfx/common/vulkan_common.h | 50 +----------------------------- gfx/drivers/vulkan.c | 3 ++ gfx/drivers_shader/shader_vulkan.h | 1 + 4 files changed, 29 insertions(+), 50 deletions(-) diff --git a/gfx/common/vksym.h b/gfx/common/vksym.h index 9cccd1145a..79fd6d6a72 100644 --- a/gfx/common/vksym.h +++ b/gfx/common/vksym.h @@ -23,7 +23,9 @@ #include "../../config.h" #endif -#include +#ifndef VK_STRUCTURE_TYPE_DMA_BUF_IMAGE_CREATE_INFO_INTEL +#define VK_STRUCTURE_TYPE_DMA_BUF_IMAGE_CREATE_INFO_INTEL 1024 +#endif #define VKFUNC(sym) (vkcfp->sym) @@ -51,6 +53,27 @@ #include +typedef struct VkDmaBufImageCreateInfo_ +{ + VkStructureType sType; /* Must be VK_STRUCTURE_TYPE_DMA_BUF_IMAGE_CREATE_INFO_INTEL */ + const void* pNext; /* Pointer to next structure. */ + int fd; + VkFormat format; + VkExtent3D extent; /* Depth must be 1 */ + uint32_t strideInBytes; +} VkDmaBufImageCreateInfo; + +typedef VkResult (VKAPI_PTR *PFN_vkCreateDmaBufImageINTEL)(VkDevice device, + const VkDmaBufImageCreateInfo* pCreateInfo, + const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMem, VkImage* pImage); + +VKAPI_ATTR VkResult VKAPI_CALL vkCreateDmaBufImageINTEL( + VkDevice _device, + const VkDmaBufImageCreateInfo* pCreateInfo, + const VkAllocationCallbacks* pAllocator, + VkDeviceMemory* pMem, + VkImage* pImage); + typedef struct vulkan_context_fp { /* Instance */ diff --git a/gfx/common/vulkan_common.h b/gfx/common/vulkan_common.h index d2aa677380..64f741c32f 100644 --- a/gfx/common/vulkan_common.h +++ b/gfx/common/vulkan_common.h @@ -28,54 +28,7 @@ #define VULKAN_DIRTY_DYNAMIC_BIT 0x0001 -#define VK_PROTOTYPES - -#ifdef HAVE_WAYLAND -#define VK_USE_PLATFORM_WAYLAND_KHR -#endif - -#ifdef HAVE_MIR -#define VK_USE_PLATFORM_MIR_KHR -#endif - -#ifdef _WIN32 -#define VK_USE_PLATFORM_WIN32_KHR -#endif - -#ifdef HAVE_XCB -#define VK_USE_PLATFORM_XCB_KHR -#endif - -#ifdef HAVE_XLIB -#define VK_USE_PLATFORM_XLIB_KHR -#endif - -#include - -#ifndef VK_STRUCTURE_TYPE_DMA_BUF_IMAGE_CREATE_INFO_INTEL -#define VK_STRUCTURE_TYPE_DMA_BUF_IMAGE_CREATE_INFO_INTEL 1024 -#endif - -typedef struct VkDmaBufImageCreateInfo_ -{ - VkStructureType sType; /* Must be VK_STRUCTURE_TYPE_DMA_BUF_IMAGE_CREATE_INFO_INTEL */ - const void* pNext; /* Pointer to next structure. */ - int fd; - VkFormat format; - VkExtent3D extent; /* Depth must be 1 */ - uint32_t strideInBytes; -} VkDmaBufImageCreateInfo; - -typedef VkResult (VKAPI_PTR *PFN_vkCreateDmaBufImageINTEL)(VkDevice device, - const VkDmaBufImageCreateInfo* pCreateInfo, - const VkAllocationCallbacks* pAllocator, VkDeviceMemory* pMem, VkImage* pImage); - -VKAPI_ATTR VkResult VKAPI_CALL vkCreateDmaBufImageINTEL( - VkDevice _device, - const VkDmaBufImageCreateInfo* pCreateInfo, - const VkAllocationCallbacks* pAllocator, - VkDeviceMemory* pMem, - VkImage* pImage); +#include "vksym.h" #include #include @@ -127,7 +80,6 @@ enum vulkan_wsi_type VULKAN_WSI_XLIB }; -#include "vksym.h" typedef struct vulkan_context { diff --git a/gfx/drivers/vulkan.c b/gfx/drivers/vulkan.c index 741977d617..065aba1bd0 100644 --- a/gfx/drivers/vulkan.c +++ b/gfx/drivers/vulkan.c @@ -593,6 +593,8 @@ static bool vulkan_init_default_filter_chain(vk_t *vk) struct vulkan_filter_chain_create_info info; memset(&info, 0, sizeof(info)); + + info.fp = (void*)&vk->context->fp; info.device = vk->context->device; info.memory_properties = &vk->context->memory_properties; info.pipeline_cache = vk->pipelines.cache; @@ -624,6 +626,7 @@ static bool vulkan_init_filter_chain_preset(vk_t *vk, const char *shader_path) memset(&info, 0, sizeof(info)); + info.fp = (void*)&vk->context->fp; info.device = vk->context->device; info.memory_properties = &vk->context->memory_properties; info.pipeline_cache = vk->pipelines.cache; diff --git a/gfx/drivers_shader/shader_vulkan.h b/gfx/drivers_shader/shader_vulkan.h index 7bddbaf239..2db723bd74 100644 --- a/gfx/drivers_shader/shader_vulkan.h +++ b/gfx/drivers_shader/shader_vulkan.h @@ -76,6 +76,7 @@ struct vulkan_filter_chain_swapchain_info struct vulkan_filter_chain_create_info { + void *fp; VkDevice device; const VkPhysicalDeviceMemoryProperties *memory_properties; VkPipelineCache pipeline_cache;