aboutsummaryrefslogtreecommitdiff
path: root/loader
diff options
context:
space:
mode:
authorPetros Bantolas <petros.bantolas@imgtec.com>2016-04-14 12:50:42 +0100
committerJon Ashburn <jon@lunarg.com>2016-04-14 14:35:28 -0600
commit26fea8827c2e86b02f41833b3432d7243d6dfead (patch)
tree55f8bc17cb1fb53d0e0dd2c1f8f38ff3cbde4c3d /loader
parentea443a6e1ebb35fe67d475d9a27854564398eb48 (diff)
downloadusermoji-26fea8827c2e86b02f41833b3432d7243d6dfead.tar.xz
loader: Added some missing function entry points to loader_icd_init_entrys.
KHR_surface, KHR_display extension functions were not exposed properly. Specifically, added LOOKUP_GIPA entries for: * GetPhysicalDeviceDisplayPropertiesKHR * GetDisplayModePropertiesKHR * CreateDisplayPlaneSurfaceKHR * GetPhysicalDeviceDisplayPlanePropertiesKHR * GetDisplayPlaneSupportedDisplaysKHR * CreateDisplayModeKHR * GetDisplayPlaneCapabilitiesKHR * DestroySurfaceKHR Added missing function declaration DestroySurfaceKHR in loader_icd struct. Checking if KHR_surface extension is enabled before proceeding in the terminator_CreateDisplayPlaneSurfaceKHR definition. Change-Id: I0599efddedc5064859ae1f4e52bdbbf8788d5c12
Diffstat (limited to 'loader')
-rw-r--r--loader/loader.c8
-rw-r--r--loader/loader.h2
-rw-r--r--loader/wsi.c7
3 files changed, 17 insertions, 0 deletions
diff --git a/loader/loader.c b/loader/loader.c
index e2939cf7..101044d9 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -1457,6 +1457,14 @@ static bool loader_icd_init_entrys(struct loader_icd *icd, VkInstance inst,
LOOKUP_GIPA(GetPhysicalDeviceSurfaceCapabilitiesKHR, false);
LOOKUP_GIPA(GetPhysicalDeviceSurfaceFormatsKHR, false);
LOOKUP_GIPA(GetPhysicalDeviceSurfacePresentModesKHR, false);
+ LOOKUP_GIPA(GetPhysicalDeviceDisplayPropertiesKHR, false);
+ LOOKUP_GIPA(GetDisplayModePropertiesKHR, false);
+ LOOKUP_GIPA(CreateDisplayPlaneSurfaceKHR, false);
+ LOOKUP_GIPA(GetPhysicalDeviceDisplayPlanePropertiesKHR, false);
+ LOOKUP_GIPA(GetDisplayPlaneSupportedDisplaysKHR, false);
+ LOOKUP_GIPA(CreateDisplayModeKHR, false);
+ LOOKUP_GIPA(GetDisplayPlaneCapabilitiesKHR, false);
+ LOOKUP_GIPA(DestroySurfaceKHR, false);
#ifdef VK_USE_PLATFORM_WIN32_KHR
LOOKUP_GIPA(GetPhysicalDeviceWin32PresentationSupportKHR, false);
#endif
diff --git a/loader/loader.h b/loader/loader.h
index b29c4506..1971fad0 100644
--- a/loader/loader.h
+++ b/loader/loader.h
@@ -259,6 +259,8 @@ struct loader_icd {
GetDisplayPlaneCapabilitiesKHR;
PFN_vkCreateDisplayPlaneSurfaceKHR
CreateDisplayPlaneSurfaceKHR;
+ PFN_vkDestroySurfaceKHR
+ DestroySurfaceKHR;
struct loader_icd *next;
};
diff --git a/loader/wsi.c b/loader/wsi.c
index 5b408ec3..3cb20a88 100644
--- a/loader/wsi.c
+++ b/loader/wsi.c
@@ -1410,6 +1410,13 @@ terminator_CreateDisplayPlaneSurfaceKHR(
struct loader_instance *inst = loader_get_instance(instance);
VkIcdSurfaceDisplay *pIcdSurface = NULL;
+ if (!inst->wsi_surface_enabled) {
+ loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0,
+ "VK_KHR_surface extension not enabled. "
+ "vkCreateDisplayPlaneSurfaceKHR not executed!\n");
+ return VK_SUCCESS;
+ }
+
pIcdSurface = loader_heap_alloc(inst, sizeof(VkIcdSurfaceDisplay),
VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE);
if (pIcdSurface == NULL) {