nvk: Advertise the new maintenance10 format features

We don't actually advertise compute-only or depth-only queues right now
but nothing in the spec says you have to advertise the queues in order
to advertise the bits.  Setting them now ensures we don't forget them
when compute-only or transfer-only queues get added.

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38094>
This commit is contained in:
Faith Ekstrand 2025-10-27 14:58:28 -04:00
parent 0a5a456259
commit 268a1db7cc

View file

@ -109,6 +109,16 @@ nvk_get_image_plane_format_features(const struct nvk_physical_device *pdev,
features |= VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT;
if (!vk_format_is_depth_or_stencil(vk_format))
features |= VK_FORMAT_FEATURE_2_HOST_IMAGE_TRANSFER_BIT_EXT;
/* The copy engine handles depth and stencil just fine */
if (vk_format_has_depth(vk_format)) {
features |= VK_FORMAT_FEATURE_2_DEPTH_COPY_ON_COMPUTE_QUEUE_BIT_KHR |
VK_FORMAT_FEATURE_2_DEPTH_COPY_ON_TRANSFER_QUEUE_BIT_KHR;
}
if (vk_format_has_stencil(vk_format)) {
features |= VK_FORMAT_FEATURE_2_STENCIL_COPY_ON_COMPUTE_QUEUE_BIT_KHR |
VK_FORMAT_FEATURE_2_STENCIL_COPY_ON_TRANSFER_QUEUE_BIT_KHR;
}
}
return features;