aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Elliott <ian@lunarg.com>2015-07-06 14:29:31 -0600
committerCourtney Goeltzenleuchter <courtney@LunarG.com>2015-07-17 10:05:21 -0600
commit35489e3765be03ce1997fd7b79c771eae658595c (patch)
tree743918167b07313e563f7cb20c06e4c5f289308e
parentaaae5350faa95cd7223a2200c27f23cb3babd8e2 (diff)
downloadusermoji-35489e3765be03ce1997fd7b79c771eae658595c.tar.xz
nulldrv: Changes to use new WSI swapchain extensions.
-rw-r--r--icd/nulldrv/nulldrv.c40
-rw-r--r--icd/nulldrv/nulldrv.h5
2 files changed, 16 insertions, 29 deletions
diff --git a/icd/nulldrv/nulldrv.c b/icd/nulldrv/nulldrv.c
index 0e42c8a1..867b3db7 100644
--- a/icd/nulldrv/nulldrv.c
+++ b/icd/nulldrv/nulldrv.c
@@ -40,12 +40,12 @@
// The null driver supports all WSI extenstions ... for now ...
static const char * const nulldrv_gpu_exts[NULLDRV_EXT_COUNT] = {
- [NULLDRV_EXT_WSI_LUNARG] = VK_WSI_LUNARG_EXTENSION_NAME,
+ [NULLDRV_EXT_WSI_SWAPCHAIN] = VK_WSI_SWAPCHAIN_EXTENSION_NAME,
};
static const VkExtensionProperties intel_gpu_exts[NULLDRV_EXT_COUNT] = {
{
- .extName = VK_WSI_LUNARG_EXTENSION_NAME,
- .specVersion = ,VK_WSI_LUNARG_REVISION,
+ .extName = VK_WSI_SWAPCHAIN_EXTENSION_NAME,
+ .specVersion = VK_WSI_SWAPCHAIN_REVISION,
}
};
@@ -848,6 +848,7 @@ ICD_EXPORT VkResult VKAPI vkCreateSwapChainWSI(
}
ICD_EXPORT VkResult VKAPI vkDestroySwapChainWSI(
+ VkDevice device,
VkSwapChainWSI swapChain)
{
NULLDRV_LOG_FUNC;
@@ -859,6 +860,7 @@ ICD_EXPORT VkResult VKAPI vkDestroySwapChainWSI(
}
ICD_EXPORT VkResult VKAPI vkGetSwapChainInfoWSI(
+ VkDevice device,
VkSwapChainWSI swapChain,
VkSwapChainInfoTypeWSI infoType,
size_t* pDataSize,
@@ -873,38 +875,22 @@ ICD_EXPORT VkResult VKAPI vkGetSwapChainInfoWSI(
return VK_ERROR_INVALID_POINTER;
switch (infoType) {
- case VK_SWAP_CHAIN_INFO_TYPE_PERSISTENT_IMAGES_WSI:
- {
- VkSwapChainImageInfoWSI *images;
- const size_t size = sizeof(*images) * 2;
+ case VK_SWAP_CHAIN_INFO_TYPE_IMAGES_WSI:
+ *pDataSize = (sizeof(VkSwapChainImagePropertiesWSI) * 2);
+ if (pData) {
+ VkSwapChainImagePropertiesWSI *images =
+ (VkSwapChainImagePropertiesWSI *) pData;
uint32_t i;
- if (pData && *pDataSize < size)
- return VK_ERROR_INVALID_VALUE;
-
- *pDataSize = size;
- if (!pData)
- return VK_SUCCESS;
-
- images = (VkSwapChainImageInfoWSI *) pData;
for (i = 0; i < 2; i++) {
struct nulldrv_img *img;
- struct nulldrv_mem *mem;
img = (struct nulldrv_img *) nulldrv_base_create(dev,
sizeof(*img),
VK_OBJECT_TYPE_IMAGE);
if (!img)
return VK_ERROR_OUT_OF_HOST_MEMORY;
-
- mem = (struct nulldrv_mem *) nulldrv_base_create(dev,
- sizeof(*mem),
- VK_OBJECT_TYPE_DEVICE_MEMORY);
- if (!mem)
- return VK_ERROR_OUT_OF_HOST_MEMORY;
-
- images[i].image.handle = (uint64_t) img;
- images[i].memory.handle = (uint64_t) mem;
+ images[i].image = (VkImage) img;
}
}
break;
@@ -917,8 +903,8 @@ ICD_EXPORT VkResult VKAPI vkGetSwapChainInfoWSI(
}
ICD_EXPORT VkResult VKAPI vkQueuePresentWSI(
- VkQueue queue_,
- const VkPresentInfoWSI* pPresentInfo)
+ VkQueue queue_,
+ VkPresentInfoWSI* pPresentInfo)
{
NULLDRV_LOG_FUNC;
diff --git a/icd/nulldrv/nulldrv.h b/icd/nulldrv/nulldrv.h
index 8aef6f96..9784d5cf 100644
--- a/icd/nulldrv/nulldrv.h
+++ b/icd/nulldrv/nulldrv.h
@@ -33,7 +33,8 @@
#include <vulkan.h>
#include <vk_debug_report_lunarg.h>
#include <vk_icd.h>
-#include <vk_wsi_lunarg.h>
+#include "vk_wsi_swapchain.h"
+#include "vk_wsi_device_swapchain.h"
#include "icd.h"
@@ -51,7 +52,7 @@ struct nulldrv_obj {
};
enum nulldrv_ext_type {
- NULLDRV_EXT_WSI_LUNARG,
+ NULLDRV_EXT_WSI_SWAPCHAIN,
NULLDRV_EXT_COUNT,
NULLDRV_EXT_INVALID = NULLDRV_EXT_COUNT,
};