vulkan.h: Remove vkGetFormatInfo, add features/limits (#12827, v125)
NOTES:
1/ Some layers impact from vkGetFormatInfo ->
vkGetPhysicalDeviceFormatInfo; some checks are currently disabled in
ParamChecker pending discussion on the best way to do this. Similar
checks in Image layer implemented via additional layer_data member
to link back from VkDevice -> VkPhysicalDevice.
2/ VkPhysicalDeviceFeatures, VkPhysicalDeviceLimits members all zero
for now; also some further churn to be done to the contents of these
structures.
Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
diff --git a/tests/blit_tests.cpp b/tests/blit_tests.cpp
index b2a13ec..058f47f 100644
--- a/tests/blit_tests.cpp
+++ b/tests/blit_tests.cpp
@@ -1337,13 +1337,11 @@
it != test_formats_.end(); it++) {
const float color[4] = { 0.0f, 1.0f, 0.0f, 1.0f };
VkFormatProperties props;
- size_t size = sizeof(props);
VkResult err;
- err = vkGetFormatInfo(dev_.obj(), it->format,
- VK_FORMAT_INFO_TYPE_PROPERTIES,
- &size, &props);
+ err = vkGetPhysicalDeviceFormatInfo(dev_.gpu().obj(), it->format, &props);
ASSERT_EQ(err, VK_SUCCESS);
+
if (it->tiling == VK_IMAGE_TILING_LINEAR && !(props.linearTilingFeatures & VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT))
continue;
@@ -1387,13 +1385,11 @@
it != test_formats_.end(); it++) {
const uint32_t color[4] = { 0x11111111, 0x22222222, 0x33333333, 0x44444444 };
VkFormatProperties props;
- size_t size = sizeof(props);
VkResult err;
- err = vkGetFormatInfo(dev_.obj(), it->format,
- VK_FORMAT_INFO_TYPE_PROPERTIES,
- &size, &props);
+ err = vkGetPhysicalDeviceFormatInfo(dev_.gpu().obj(), it->format, &props);
ASSERT_EQ(err, VK_SUCCESS);
+
if (it->tiling == VK_IMAGE_TILING_LINEAR && !(props.linearTilingFeatures & VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT))
continue;
@@ -1571,13 +1567,11 @@
for (std::vector<vk_testing::Device::Format>::const_iterator it = test_formats_.begin();
it != test_formats_.end(); it++) {
VkFormatProperties props;
- size_t size = sizeof(props);
VkResult err;
- err = vkGetFormatInfo(dev_.obj(), it->format,
- VK_FORMAT_INFO_TYPE_PROPERTIES,
- &size, &props);
+ err = vkGetPhysicalDeviceFormatInfo(dev_.gpu().obj(), it->format, &props);
ASSERT_EQ(err, VK_SUCCESS);
+
if (it->tiling == VK_IMAGE_TILING_LINEAR && !(props.linearTilingFeatures & VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT))
continue;