summaryrefslogtreecommitdiff
path: root/src/freedreno
diff options
context:
space:
mode:
authorConnor Abbott <cwabbott0@gmail.com>2023-11-14 16:22:48 +0100
committerEric Engestrom <eric@engestrom.ch>2024-08-25 17:06:02 +0200
commitc3d68212e7616bc033daa547a3f7637378dc21c5 (patch)
tree942b2a9e5460447106ee421bfb7f8a86bfdf7f31 /src/freedreno
parent61d6cbf7aae486bd48e4adee676e141cd6577bf5 (diff)
tu: Treat partially-bound depth/stencil attachments as passthrough
Make sure to preserve the depth or stencil components of D24S8 using the fixed codepath just added. While we're here, fix the detection of whether an attachment is bound. Fixes: cb0f414b ("tu: Add support for suspending and resuming renderpasses") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26154> (cherry picked from commit 812c8f6abe4d78a26c7f669f0fcbc07540b3c0d8)
Diffstat (limited to 'src/freedreno')
-rw-r--r--src/freedreno/ci/freedreno-a618-fails.txt1
-rw-r--r--src/freedreno/ci/freedreno-a630-fails.txt1
-rw-r--r--src/freedreno/ci/freedreno-a660-fails.txt1
-rw-r--r--src/freedreno/ci/freedreno-a750-fails.txt1
-rw-r--r--src/freedreno/vulkan/tu_pass.cc16
5 files changed, 8 insertions, 12 deletions
diff --git a/src/freedreno/ci/freedreno-a618-fails.txt b/src/freedreno/ci/freedreno-a618-fails.txt
index 076bad28890..70def9c3d11 100644
--- a/src/freedreno/ci/freedreno-a618-fails.txt
+++ b/src/freedreno/ci/freedreno-a618-fails.txt
@@ -314,7 +314,6 @@ spec@arb_vertex_attrib_64bit@execution@unused-sub-dvec4-02,Crash
gmem-dEQP-VK.binding_model.descriptor_buffer.basic.limits,Fail
# New CTS failures in 1.3.7.0
-dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.partial_binding_depth_stencil,Fail
dEQP-VK.binding_model.descriptorset_random.sets4.constant.ubolimitlow.sbolimitlow.sampledimglow.outimgtexlow.iublimitlow.uab.comp.noia.0,Fail
gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.point_list.indirect,Fail
gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.triangle_fan.draw,Fail
diff --git a/src/freedreno/ci/freedreno-a630-fails.txt b/src/freedreno/ci/freedreno-a630-fails.txt
index b5c6c5b480f..634e4520e64 100644
--- a/src/freedreno/ci/freedreno-a630-fails.txt
+++ b/src/freedreno/ci/freedreno-a630-fails.txt
@@ -313,7 +313,6 @@ dEQP-VK.info.device_mandatory_features,Fail
# New CTS failures in 1.3.7.0
dEQP-VK.api.version_check.unavailable_entry_points,Fail
-dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.partial_binding_depth_stencil,Fail
dynamic-dEQP-VK.renderpass2.depth_stencil_resolve.image_2d_32_32.samples_2.d24_unorm_s8_uint.compatibility_depth_zero_stencil_zero_testing_stencil,Fail
gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.32bit.triangle_fan.draw,Fail
gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_statistics_1.64bit.line_list_with_adjacency.indirect,Fail
diff --git a/src/freedreno/ci/freedreno-a660-fails.txt b/src/freedreno/ci/freedreno-a660-fails.txt
index 21b5d84d545..a521ad57ead 100644
--- a/src/freedreno/ci/freedreno-a660-fails.txt
+++ b/src/freedreno/ci/freedreno-a660-fails.txt
@@ -538,7 +538,6 @@ dEQP-VK.api.maintenance3_check.support_count_uniform_buffer_no_variable_size,Fai
dEQP-VK.api.maintenance3_check.support_count_uniform_buffer,Fail
dEQP-VK.api.maintenance3_check.support_count_uniform_texel_buffer,Fail
dEQP-VK.api.version_check.unavailable_entry_points,Fail
-dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.partial_binding_depth_stencil,Fail
dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_color_blend_state,Crash
dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.after_pipelines.null_rasterization_state,Crash
dEQP-VK.pipeline.fast_linked_library.extended_dynamic_state.before_good_static.null_rasterization_state,Crash
diff --git a/src/freedreno/ci/freedreno-a750-fails.txt b/src/freedreno/ci/freedreno-a750-fails.txt
index 4bc0b6ae3c9..29ced4f521a 100644
--- a/src/freedreno/ci/freedreno-a750-fails.txt
+++ b/src/freedreno/ci/freedreno-a750-fails.txt
@@ -1,6 +1,5 @@
dEQP-VK.api.get_device_proc_addr.non_enabled,Fail
dEQP-VK.api.version_check.unavailable_entry_points,Fail
-dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.partial_binding_depth_stencil,Fail
gmem-dEQP-VK.clipping.user_defined.clip_cull_distance_dynamic_index.vert_geom.6_2,Fail
gmem-dEQP-VK.clipping.user_defined.clip_cull_distance_dynamic_index.vert_geom.6_2_fragmentshader_read,Fail
diff --git a/src/freedreno/vulkan/tu_pass.cc b/src/freedreno/vulkan/tu_pass.cc
index c813e9063e5..b389cc1217b 100644
--- a/src/freedreno/vulkan/tu_pass.cc
+++ b/src/freedreno/vulkan/tu_pass.cc
@@ -1142,14 +1142,14 @@ tu_setup_dynamic_render_pass(struct tu_cmd_buffer *cmd_buffer,
attachment_set_ops(
device, att,
- info->pDepthAttachment ? info->pDepthAttachment->loadOp
- : VK_ATTACHMENT_LOAD_OP_DONT_CARE,
- info->pStencilAttachment ? info->pStencilAttachment->loadOp
- : VK_ATTACHMENT_LOAD_OP_DONT_CARE,
- info->pDepthAttachment ? info->pDepthAttachment->storeOp
- : VK_ATTACHMENT_STORE_OP_DONT_CARE,
- info->pStencilAttachment ? info->pStencilAttachment->storeOp
- : VK_ATTACHMENT_STORE_OP_DONT_CARE);
+ (info->pDepthAttachment && info->pDepthAttachment->imageView) ?
+ info->pDepthAttachment->loadOp : VK_ATTACHMENT_LOAD_OP_NONE_EXT,
+ (info->pStencilAttachment && info->pStencilAttachment->imageView) ?
+ info->pStencilAttachment->loadOp : VK_ATTACHMENT_LOAD_OP_NONE_EXT,
+ (info->pDepthAttachment && info->pDepthAttachment->imageView) ?
+ info->pDepthAttachment->storeOp : VK_ATTACHMENT_STORE_OP_NONE_EXT,
+ (info->pStencilAttachment && info->pStencilAttachment->imageView) ?
+ info->pStencilAttachment->storeOp : VK_ATTACHMENT_STORE_OP_NONE_EXT);
subpass->samples = (VkSampleCountFlagBits) view->image->layout->nr_samples;