From 651cd3fd4e73dcd67a692ae3b3f461508536ad9a Mon Sep 17 00:00:00 2001 From: Daniel Koch Date: Fri, 6 Oct 2017 10:36:18 -0400 Subject: [PATCH] WSI devgroup tests need VK_KHR_swapchain Restore requirement of VK_KHR_swapchain as a requirement for the WSI portion of the device_group tests. Components: Vulkan VK-GL-CTS issue: 733 Affects: dEQP-VK.wsi.*.surface.query_devgroup* Change-Id: I59c1ba12b9fb87b0c0c68b09b86aa76ab50fcd1e --- .../modules/vulkan/wsi/vktWsiSurfaceTests.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/external/vulkancts/modules/vulkan/wsi/vktWsiSurfaceTests.cpp b/external/vulkancts/modules/vulkan/wsi/vktWsiSurfaceTests.cpp index 93a68eb..f937678 100644 --- a/external/vulkancts/modules/vulkan/wsi/vktWsiSurfaceTests.cpp +++ b/external/vulkancts/modules/vulkan/wsi/vktWsiSurfaceTests.cpp @@ -773,10 +773,19 @@ tcu::TestStatus queryDevGroupSurfacePresentCapabilitiesTest (Context& context, T deUint8 buffer [sizeof(VkDeviceGroupPresentCapabilitiesKHR) + GUARD_SIZE]; deUint32 queueFamilyIndex = 0; VkDeviceGroupPresentCapabilitiesKHR* presentCapabilities; + VkPhysicalDevice physicalDevice = chooseDevice(instHelper.vki, *instHelper.instance, cmdLine); + const Extensions& supportedExtensions = enumerateDeviceExtensionProperties(instHelper.vki, physicalDevice, DE_NULL); std::vector deviceExtensions; if (!isCoreDeviceExtension(context.getUsedApiVersion(), "VK_KHR_device_group")) deviceExtensions.push_back("VK_KHR_device_group"); + deviceExtensions.push_back("VK_KHR_swapchain"); + + for (int ndx = 0; ndx < int(deviceExtensions.size()); ++ndx) + { + if (!isExtensionSupported(supportedExtensions, RequiredExtension(deviceExtensions[ndx]))) + TCU_THROW(NotSupportedError, (string(deviceExtensions[ndx]) + " is not supported").c_str()); + } const vector deviceGroupProps = enumeratePhysicalDeviceGroups(instHelper.vki, *instHelper.instance); @@ -873,10 +882,19 @@ tcu::TestStatus queryDevGroupSurfacePresentModesTest (Context& context, Type wsi VkRect2D* presentRectangles; VkDeviceGroupPresentModeFlagsKHR* presentModeFlags; vector rectanglesBuffer; + VkPhysicalDevice physicalDevice = chooseDevice(instHelper.vki, *instHelper.instance, cmdLine); + const Extensions& supportedExtensions = enumerateDeviceExtensionProperties(instHelper.vki, physicalDevice, DE_NULL); std::vector deviceExtensions; if (!isCoreDeviceExtension(context.getUsedApiVersion(), "VK_KHR_device_group")) deviceExtensions.push_back("VK_KHR_device_group"); + deviceExtensions.push_back("VK_KHR_swapchain"); + + for (int ndx = 0; ndx < int(deviceExtensions.size()); ++ndx) + { + if (!isExtensionSupported(supportedExtensions, RequiredExtension(deviceExtensions[ndx]))) + TCU_THROW(NotSupportedError, (string(deviceExtensions[ndx]) + " is not supported").c_str()); + } const vector deviceGroupProps = enumeratePhysicalDeviceGroups(instHelper.vki, *instHelper.instance); const std::vector queueProps = getPhysicalDeviceQueueFamilyProperties(instHelper.vki, deviceGroupProps[devGroupIdx].physicalDevices[deviceIdx]); -- 2.7.4