lavapipe: Adjust imageGranularity for block formats

The cts tests are wrong.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36197>
This commit is contained in:
Konstantin Seurer 2025-07-10 22:57:42 +02:00 committed by Marge Bot
parent 70c4f2f91f
commit c9c1110149
3 changed files with 6 additions and 7 deletions

View file

@ -863,3 +863,6 @@ dEQP-VK.pipeline.shader_object_linked_spirv.multisample.sample_rate_a2c.static_a
dEQP-VK.pipeline.fast_linked_library.multisample.sample_rate_a2c.static_a2c,Fail
dEQP-VK.pipeline.shader_object_linked_binary.multisample.sample_rate_a2c.static_a2c,Fail
dEQP-VK.pipeline.shader_object_unlinked_spirv.multisample.sample_rate_a2c.static_a2c,Fail
dEQP-VK.sparse_resources.image_block_shapes.2d.g8b8g8r8_422_unorm.samples_1,Fail
dEQP-VK.sparse_resources.image_block_shapes.2d_array.g8b8g8r8_422_unorm.samples_1,Fail

View file

@ -1,13 +1,9 @@
# src/gallium/frontends/lavapipe/lvp_private.h:773: lvp_image_aspects_to_plane: Assertion `!(aspectMask & ~image->vk.aspects)' failed.
test_get_resource_tiling,Crash
# The tests assumes a dubgroup size >= 16
test_shader_waveop_maximal_convergence,Fail
test_sampler_feedback_implicit_lod_aniso,Fail
test_get_resource_tiling,Fail
test_planar_video_formats,Fail
test_rayquery,Fail
test_raytracing,Fail

View file

@ -534,9 +534,9 @@ fill_sparse_image_format_properties(struct lvp_physical_device *pdev, VkImageTyp
prop->aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
prop->flags = 0;
prop->imageGranularity = (VkExtent3D){
.width = util_format_get_tilesize(pformat, type + 1, samples, 0),
.height = util_format_get_tilesize(pformat, type + 1, samples, 1),
.depth = util_format_get_tilesize(pformat, type + 1, samples, 2),
.width = util_format_get_tilesize(pformat, type + 1, samples, 0) * util_format_get_blockwidth(pformat),
.height = util_format_get_tilesize(pformat, type + 1, samples, 1) * util_format_get_blockheight(pformat),
.depth = util_format_get_tilesize(pformat, type + 1, samples, 2) * util_format_get_blockdepth(pformat),
};
}