venus: support VK_EXT_depth_clamp_control

Test: dEQP-VK.draw.*clamp_control*

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33992>
This commit is contained in:
Yiwei Zhang
2025-03-10 15:16:08 -07:00
committed by Marge Bot
parent 8914447d9e
commit edcc7148ba
3 changed files with 13 additions and 1 deletions

View File

@@ -590,7 +590,7 @@ Khronos extensions that are not part of any Vulkan version:
VK_EXT_debug_report DONE (anv, dzn, lvp, nvk, panvk, pvr, radv, tu, v3dv)
VK_EXT_debug_utils DONE (anv, dzn, hasvk, lvp, nvk, panvk, pvr, radv, tu, v3dv)
VK_EXT_depth_bias_control DONE (anv, nvk, radv, vn)
VK_EXT_depth_clamp_control DONE (anv, hasvk, nvk, radv)
VK_EXT_depth_clamp_control DONE (anv, hasvk, nvk, radv, vn)
VK_EXT_depth_clip_control DONE (anv, hasvk, lvp, nvk, radv, tu, v3dv, vn)
VK_EXT_depth_clip_enable DONE (anv, hasvk, lvp, nvk, panvk, radv, tu, v3dv/vc7+, vn)
VK_EXT_depth_range_unrestricted DONE (anv/gen20+, nvk, radv, lvp, vn)

View File

@@ -2825,3 +2825,12 @@ vn_CmdSetDepthBias2EXT(VkCommandBuffer commandBuffer,
{
VN_CMD_ENQUEUE(vkCmdSetDepthBias2EXT, commandBuffer, pDepthBiasInfo);
}
void
vn_CmdSetDepthClampRangeEXT(VkCommandBuffer commandBuffer,
VkDepthClampModeEXT depthClampMode,
const VkDepthClampRangeEXT *pDepthClampRange)
{
VN_CMD_ENQUEUE(vkCmdSetDepthClampRangeEXT, commandBuffer, depthClampMode,
pDepthClampRange);
}

View File

@@ -181,6 +181,7 @@ vn_physical_device_init_features(struct vn_physical_device *physical_dev)
VkPhysicalDeviceConditionalRenderingFeaturesEXT conditional_rendering;
VkPhysicalDeviceCustomBorderColorFeaturesEXT custom_border_color;
VkPhysicalDeviceDepthBiasControlFeaturesEXT depth_bias_control;
VkPhysicalDeviceDepthClampControlFeaturesEXT depth_clamp_control;
VkPhysicalDeviceDepthClipControlFeaturesEXT depth_clip_control;
VkPhysicalDeviceDepthClipEnableFeaturesEXT depth_clip_enable;
VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT
@@ -327,6 +328,7 @@ vn_physical_device_init_features(struct vn_physical_device *physical_dev)
VN_ADD_PNEXT_EXT(feats2, CONDITIONAL_RENDERING_FEATURES_EXT, local_feats.conditional_rendering, exts->EXT_conditional_rendering);
VN_ADD_PNEXT_EXT(feats2, CUSTOM_BORDER_COLOR_FEATURES_EXT, local_feats.custom_border_color, exts->EXT_custom_border_color);
VN_ADD_PNEXT_EXT(feats2, DEPTH_BIAS_CONTROL_FEATURES_EXT, local_feats.depth_bias_control, exts->EXT_depth_bias_control);
VN_ADD_PNEXT_EXT(feats2, DEPTH_CLAMP_CONTROL_FEATURES_EXT, local_feats.depth_clamp_control, exts->EXT_depth_clamp_control);
VN_ADD_PNEXT_EXT(feats2, DEPTH_CLIP_CONTROL_FEATURES_EXT, local_feats.depth_clip_control, exts->EXT_depth_clip_control);
VN_ADD_PNEXT_EXT(feats2, DEPTH_CLIP_ENABLE_FEATURES_EXT, local_feats.depth_clip_enable, exts->EXT_depth_clip_enable);
VN_ADD_PNEXT_EXT(feats2, DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT, local_feats.dynamic_rendering_unused_attachments, exts->EXT_dynamic_rendering_unused_attachments);
@@ -1271,6 +1273,7 @@ vn_physical_device_get_passthrough_extensions(
.EXT_conservative_rasterization = true,
.EXT_custom_border_color = true,
.EXT_depth_bias_control = true,
.EXT_depth_clamp_control = true,
.EXT_depth_clamp_zero_one = true,
.EXT_depth_clip_control = true,
.EXT_depth_clip_enable = true,