Add iub features and properties passthrough

Signed-off-by: Dawn Han <dawnhan@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16699>
This commit is contained in:
Dawn Han 2022-06-29 18:14:01 +00:00 committed by Marge Bot
parent 20827dfa9b
commit 40fb107664
2 changed files with 24 additions and 0 deletions

View File

@ -129,6 +129,9 @@ vn_physical_device_init_features(struct vn_physical_device *physical_dev)
EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, features2);
VN_ADD_EXT_TO_PNEXT(exts->EXT_image_robustness, feats->image_robustness,
IMAGE_ROBUSTNESS_FEATURES_EXT, features2);
VN_ADD_EXT_TO_PNEXT(exts->EXT_inline_uniform_block,
feats->inline_uniform_block,
INLINE_UNIFORM_BLOCK_FEATURES, features2);
VN_ADD_EXT_TO_PNEXT(exts->EXT_shader_demote_to_helper_invocation,
feats->shader_demote_to_helper_invocation,
SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES,
@ -466,6 +469,11 @@ vn_physical_device_init_properties(struct vn_physical_device *physical_dev)
TIMELINE_SEMAPHORE_PROPERTIES, properties2);
}
/* Vulkan 1.3 */
VN_ADD_EXT_TO_PNEXT(exts->EXT_inline_uniform_block,
props->inline_uniform_block,
INLINE_UNIFORM_BLOCK_PROPERTIES, properties2);
/* EXT */
VN_ADD_EXT_TO_PNEXT(
exts->EXT_conservative_rasterization, props->conservative_rasterization,
@ -1609,6 +1617,7 @@ vn_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
VkPhysicalDeviceExtendedDynamicState2FeaturesEXT
*extended_dynamic_state2;
VkPhysicalDeviceImageRobustnessFeaturesEXT *image_robustness;
VkPhysicalDeviceInlineUniformBlockFeatures *inline_uniform_block;
VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures
*shader_demote_to_helper_invocation;
@ -1796,6 +1805,9 @@ vn_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT:
*u.image_robustness = feats->image_robustness;
break;
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES:
*u.inline_uniform_block = feats->inline_uniform_block;
break;
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES:
*u.shader_demote_to_helper_invocation =
feats->shader_demote_to_helper_invocation;
@ -1873,6 +1885,9 @@ vn_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
VkPhysicalDeviceSamplerFilterMinmaxProperties *sampler_filter_minmax;
VkPhysicalDeviceTimelineSemaphoreProperties *timeline_semaphore;
/* Vulkan 1.3 */
VkPhysicalDeviceInlineUniformBlockProperties *inline_uniform_block;
/* EXT */
VkPhysicalDeviceConservativeRasterizationPropertiesEXT
*conservative_rasterization;
@ -2067,6 +2082,11 @@ vn_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
vk12_props->maxTimelineSemaphoreValueDifference;
break;
/* Vulkan 1.3 */
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES:
*u.inline_uniform_block = props->inline_uniform_block;
break;
/* EXT */
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:
*u.conservative_rasterization = props->conservative_rasterization;

View File

@ -27,6 +27,7 @@ struct vn_physical_device_features {
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT extended_dynamic_state;
VkPhysicalDeviceExtendedDynamicState2FeaturesEXT extended_dynamic_state_2;
VkPhysicalDeviceImageRobustnessFeaturesEXT image_robustness;
VkPhysicalDeviceInlineUniformBlockFeatures inline_uniform_block;
VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures
shader_demote_to_helper_invocation;
@ -48,6 +49,9 @@ struct vn_physical_device_properties {
VkPhysicalDeviceVulkan11Properties vulkan_1_1;
VkPhysicalDeviceVulkan12Properties vulkan_1_2;
/* Vulkan 1.3 */
VkPhysicalDeviceInlineUniformBlockProperties inline_uniform_block;
/* EXT */
VkPhysicalDeviceConservativeRasterizationPropertiesEXT
conservative_rasterization;