Module: Mesa Branch: main Commit: d54c140eb65ecf49d969c93ebbe8519c205a17c0 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d54c140eb65ecf49d969c93ebbe8519c205a17c0
Author: Juston Li <justo...@google.com> Date: Fri Nov 17 11:14:21 2023 -0800 venus: disable unsupported ExtendedDynamicState3Features Fixes: 49e5b583 ("venus: enable VK_EXT_extended_dynamic_state3") Signed-off-by: Juston Li <justo...@google.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26261> --- src/virtio/vulkan/vn_physical_device.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/virtio/vulkan/vn_physical_device.c b/src/virtio/vulkan/vn_physical_device.c index 0c16142d456..bba3dcd3f36 100644 --- a/src/virtio/vulkan/vn_physical_device.c +++ b/src/virtio/vulkan/vn_physical_device.c @@ -302,6 +302,36 @@ vn_physical_device_init_features(struct vn_physical_device *physical_dev) VN_SET_CORE_VALUE(feats, sparseResidency16Samples, false); VN_SET_CORE_VALUE(feats, sparseResidencyAliased, false); } + + /* Disable unsupported ExtendedDynamicState3Features */ + if (exts->EXT_extended_dynamic_state3) { + /* TODO: Add support for VK_EXT_sample_locations */ + VN_SET_CORE_VALUE(feats, extendedDynamicState3SampleLocationsEnable, + false); + /* TODO: Add support for VK_EXT_blend_operation_advanced */ + VN_SET_CORE_VALUE(feats, extendedDynamicState3ColorBlendAdvanced, + false); + /* VK_NV_* extensions required */ + VN_SET_CORE_VALUE(feats, extendedDynamicState3ViewportWScalingEnable, + false); + VN_SET_CORE_VALUE(feats, extendedDynamicState3ViewportSwizzle, false); + VN_SET_CORE_VALUE(feats, extendedDynamicState3CoverageToColorEnable, + false); + VN_SET_CORE_VALUE(feats, extendedDynamicState3CoverageToColorLocation, + false); + VN_SET_CORE_VALUE(feats, extendedDynamicState3CoverageModulationMode, + false); + VN_SET_CORE_VALUE( + feats, extendedDynamicState3CoverageModulationTableEnable, false); + VN_SET_CORE_VALUE(feats, extendedDynamicState3CoverageModulationTable, + false); + VN_SET_CORE_VALUE(feats, extendedDynamicState3CoverageReductionMode, + false); + VN_SET_CORE_VALUE( + feats, extendedDynamicState3RepresentativeFragmentTestEnable, false); + VN_SET_CORE_VALUE(feats, extendedDynamicState3ShadingRateImageEnable, + false); + } } static void