From d54c140eb65ecf49d969c93ebbe8519c205a17c0 Mon Sep 17 00:00:00 2001 From: Juston Li Date: Fri, 17 Nov 2023 11:14:21 -0800 Subject: [PATCH] venus: disable unsupported ExtendedDynamicState3Features Fixes: 49e5b583 ("venus: enable VK_EXT_extended_dynamic_state3") Signed-off-by: Juston Li Part-of: --- 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