From 3f90d8dfd2033a98308a1293381b83d0259a8dee Mon Sep 17 00:00:00 2001 From: Benjamin Lee Date: Tue, 17 Dec 2024 19:23:45 -0800 Subject: [PATCH] panvk/csf: fix alpha-to-coverage The equivalent bit is set correctly on JM, but was missed for CSF. There shouldn't need to be any shader changes, the alpha-to-coverage flag in FAU_ATEST_PARAM is set automatically from the bit in DcdFlags0. Fixes dEQP-VK.pipeline.*.multisample.alpha_to_coverage* Fixes: 447075eeeef ("panfrost: Add support for the CSF job frontend") Signed-off-by: Benjamin Lee Reviewed-by: Erik Faye-Lund Reviewed-by: Mary Guillemard Part-of: --- src/panfrost/ci/panfrost-g610-fails.txt | 18 ------------------ src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c | 1 + 2 files changed, 1 insertion(+), 18 deletions(-) diff --git a/src/panfrost/ci/panfrost-g610-fails.txt b/src/panfrost/ci/panfrost-g610-fails.txt index c9d39ce018c..413a73fb454 100644 --- a/src/panfrost/ci/panfrost-g610-fails.txt +++ b/src/panfrost/ci/panfrost-g610-fails.txt @@ -252,12 +252,6 @@ dEQP-VK.glsl.texture_functions.textureprojoffset.mirrored_repeat.usampler3d_bias dEQP-VK.glsl.texture_functions.textureprojoffset.mirrored_repeat.usampler3d_fragment,Fail dEQP-VK.glsl.texture_functions.textureprojoffset.mirrored_repeat.usampler3d_vertex,Fail -# Seems to be caused by an off-by-0.5 in the position. Also passes if we change -# the line shape mode to rectangular. This needs further investigation -dEQP-VK.pipeline.fast_linked_library.multisample.alpha_to_coverage.samples_4.alpha_invisible_check_depth,Fail -dEQP-VK.pipeline.fast_linked_library.multisample.alpha_to_coverage.samples_4.alpha_invisible,Fail -dEQP-VK.pipeline.fast_linked_library.multisample.alpha_to_coverage.samples_4.alpha_translucent,Fail - # uprev Piglit in Mesa spec@ext_image_dma_buf_import@ext_image_dma_buf_import-refcount-multithread,Crash @@ -346,19 +340,9 @@ dEQP-VK.glsl.limits.near_max.fragment_input.components_123,Fail dEQP-VK.glsl.limits.near_max.fragment_input.components_124,Fail dEQP-VK.pipeline.monolithic.max_varyings.test_vertex_io_between_vertex_fragment,Fail -dEQP-VK.pipeline.monolithic.multisample.alpha_to_coverage.samples_4.alpha_invisible,Fail -dEQP-VK.pipeline.monolithic.multisample.alpha_to_coverage.samples_4.alpha_invisible_check_depth,Fail -dEQP-VK.pipeline.monolithic.multisample.alpha_to_coverage.samples_4.alpha_translucent,Fail -dEQP-VK.pipeline.monolithic.multisample.alpha_to_coverage_no_color_attachment.samples_4.alpha_opaque,Fail -dEQP-VK.pipeline.monolithic.multisample.alpha_to_coverage_unused_attachment.samples_4.alpha_invisible,Fail dEQP-VK.pipeline.monolithic.multisample_shader_builtin.write_sample_mask.1_samples,Fail dEQP-VK.pipeline.pipeline_library.max_varyings.test_vertex_io_between_vertex_fragment,Fail -dEQP-VK.pipeline.pipeline_library.multisample.alpha_to_coverage.samples_4.alpha_invisible,Fail -dEQP-VK.pipeline.pipeline_library.multisample.alpha_to_coverage.samples_4.alpha_invisible_check_depth,Fail -dEQP-VK.pipeline.pipeline_library.multisample.alpha_to_coverage.samples_4.alpha_translucent,Fail -dEQP-VK.pipeline.pipeline_library.multisample.alpha_to_coverage_no_color_attachment.samples_4.alpha_opaque,Fail -dEQP-VK.pipeline.pipeline_library.multisample.alpha_to_coverage_unused_attachment.samples_4.alpha_invisible,Fail dEQP-VK.pipeline.pipeline_library.multisample_shader_builtin.write_sample_mask.1_samples,Fail @@ -372,8 +356,6 @@ dEQP-VK.spirv_assembly.instruction.graphics.opquantize.too_small_frag,Fail dEQP-VK.spirv_assembly.instruction.graphics.opquantize.too_small_vert,Fail dEQP-VK.pipeline.fast_linked_library.max_varyings.test_vertex_io_between_vertex_fragment,Fail -dEQP-VK.pipeline.fast_linked_library.multisample.alpha_to_coverage_no_color_attachment.samples_4.alpha_opaque,Fail -dEQP-VK.pipeline.fast_linked_library.multisample.alpha_to_coverage_unused_attachment.samples_4.alpha_invisible,Fail dEQP-VK.pipeline.fast_linked_library.multisample_shader_builtin.write_sample_mask.1_samples,Fail diff --git a/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c b/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c index feb928fc6f5..2662d193e56 100644 --- a/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c +++ b/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c @@ -1508,6 +1508,7 @@ prepare_dcd(struct panvk_cmd_buffer *cmdbuf) cfg.multisample_enable = dyns->ms.rasterization_samples > 1; cfg.occlusion_query = cmdbuf->state.gfx.occlusion_query.mode; + cfg.alpha_to_coverage = alpha_to_coverage; } cs_update_vt_ctx(b)