diff --git a/src/virtio/vulkan/vn_device.c b/src/virtio/vulkan/vn_device.c index 25dd97e973d..e83e0f2ced7 100644 --- a/src/virtio/vulkan/vn_device.c +++ b/src/virtio/vulkan/vn_device.c @@ -220,11 +220,7 @@ vn_device_fix_create_info(const struct vn_device *dev, app_exts->KHR_swapchain || app_exts->ANDROID_native_buffer || app_exts->ANDROID_external_memory_android_hardware_buffer; if (has_wsi) { - /* KHR_swapchain may be advertised without the renderer support for - * EXT_image_drm_format_modifier - */ - if (!app_exts->EXT_image_drm_format_modifier && - physical_dev->renderer_extensions.EXT_image_drm_format_modifier) { + if (!app_exts->EXT_image_drm_format_modifier) { extra_exts[extra_count++] = VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME; @@ -235,11 +231,7 @@ vn_device_fix_create_info(const struct vn_device *dev, } } - /* XXX KHR_swapchain may be advertised without the renderer support for - * EXT_queue_family_foreign - */ - if (!app_exts->EXT_queue_family_foreign && - physical_dev->renderer_extensions.EXT_queue_family_foreign) { + if (!app_exts->EXT_queue_family_foreign) { extra_exts[extra_count++] = VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME; } diff --git a/src/virtio/vulkan/vn_physical_device.c b/src/virtio/vulkan/vn_physical_device.c index ac0527ebd6c..25f14ea57fb 100644 --- a/src/virtio/vulkan/vn_physical_device.c +++ b/src/virtio/vulkan/vn_physical_device.c @@ -934,10 +934,12 @@ vn_physical_device_get_native_extensions( } #ifdef VN_USE_WSI_PLATFORM - /* XXX we should check for EXT_queue_family_foreign */ - exts->KHR_incremental_present = true; - exts->KHR_swapchain = true; - exts->KHR_swapchain_mutable_format = true; + if (renderer_exts->EXT_image_drm_format_modifier && + renderer_exts->EXT_queue_family_foreign) { + exts->KHR_incremental_present = true; + exts->KHR_swapchain = true; + exts->KHR_swapchain_mutable_format = true; + } #endif #endif /* ANDROID */ diff --git a/src/virtio/vulkan/vn_wsi.c b/src/virtio/vulkan/vn_wsi.c index 007af746f4e..8b782243242 100644 --- a/src/virtio/vulkan/vn_wsi.c +++ b/src/virtio/vulkan/vn_wsi.c @@ -85,10 +85,7 @@ vn_wsi_init(struct vn_physical_device *physical_dev) if (result != VK_SUCCESS) return result; - if (physical_dev->base.base.supported_extensions - .EXT_image_drm_format_modifier) - physical_dev->wsi_device.supports_modifiers = true; - + physical_dev->wsi_device.supports_modifiers = true; physical_dev->base.base.wsi_device = &physical_dev->wsi_device; return VK_SUCCESS;