diff --git a/src/freedreno/ci/freedreno-a630-fails.txt b/src/freedreno/ci/freedreno-a630-fails.txt index 5aa3875ae8b..2eb7351c8a6 100644 --- a/src/freedreno/ci/freedreno-a630-fails.txt +++ b/src/freedreno/ci/freedreno-a630-fails.txt @@ -353,7 +353,3 @@ gmem-dEQP-VK.transform_feedback.primitives_generated_query.concurrent.pipeline_s stale-regs-dEQP-VK.transform_feedback.primitives_generated_query.copy.host_reset.pgq_32bit_xfb_64bit.geom.xfb.rast.line_list_with_adjacency.pgq_0_xfb_0.single_draw.xfbq_first.none,Fail stale-regs-dEQP-VK.transform_feedback.primitives_generated_query.copy.host_reset.pgq_64bit_xfb_32bit.geom.xfb.rast.line_list.pgq_default_xfb_default.two_draws.pqg_first.before,Fail stale-regs-dEQP-VK.transform_feedback.primitives_generated_query.copy.queue_reset.pgq_64bit_xfb_32bit.tese.xfb.rast.patch_list.pgq_default_xfb_default.single_draw.pqg_first.after_2_queries,Fail -stale-regs-dEQP-VK.transform_feedback.primitives_generated_query.get.host_reset.32bit.geom.no_xfb.rast.line_list_with_adjacency.pgq_default.single_draw.pqg_first.none,Fail -stale-regs-dEQP-VK.transform_feedback.primitives_generated_query.get.host_reset.32bit.geom.xfb.rast.line_strip_with_adjacency.pgq_default_xfb_1.single_draw.xfbq_first.after,Fail -stale-regs-dEQP-VK.transform_feedback.primitives_generated_query.get.host_reset.32bit.geom.xfb.rast.triangle_strip_with_adjacency.pgq_default_xfb_1.single_draw.xfbq_first.before_2_queries,Fail -stale-regs-dEQP-VK.transform_feedback.primitives_generated_query.get.host_reset.32bit.tese.xfb.rast.patch_list.pgq_default_xfb_default.two_draws.xfbq_first.none_2_queries,Fail diff --git a/src/freedreno/vulkan/tu_cmd_buffer.cc b/src/freedreno/vulkan/tu_cmd_buffer.cc index da60f31f5e3..234fd2793f8 100644 --- a/src/freedreno/vulkan/tu_cmd_buffer.cc +++ b/src/freedreno/vulkan/tu_cmd_buffer.cc @@ -4966,7 +4966,8 @@ tu6_draw_common(struct tu_cmd_buffer *cmd, if (BITSET_TEST(cmd->vk.dynamic_graphics_state.dirty, MESA_VK_DYNAMIC_IA_PRIMITIVE_RESTART_ENABLE) || BITSET_TEST(cmd->vk.dynamic_graphics_state.dirty, - MESA_VK_DYNAMIC_RS_PROVOKING_VERTEX)) { + MESA_VK_DYNAMIC_RS_PROVOKING_VERTEX) || + (cmd->state.dirty & TU_CMD_DIRTY_DRAW_STATE)) { bool primitive_restart_enabled = cmd->vk.dynamic_graphics_state.ia.primitive_restart_enable; @@ -4987,7 +4988,8 @@ tu6_draw_common(struct tu_cmd_buffer *cmd, struct tu_tess_params *tess_params = &cmd->state.tess_params; if ((cmd->state.dirty & TU_CMD_DIRTY_TESS_PARAMS) || BITSET_TEST(cmd->vk.dynamic_graphics_state.dirty, - MESA_VK_DYNAMIC_TS_DOMAIN_ORIGIN)) { + MESA_VK_DYNAMIC_TS_DOMAIN_ORIGIN) || + (cmd->state.dirty & TU_CMD_DIRTY_DRAW_STATE)) { bool tess_upper_left_domain_origin = (VkTessellationDomainOrigin)cmd->vk.dynamic_graphics_state.ts.domain_origin == VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT; @@ -5052,12 +5054,14 @@ tu6_draw_common(struct tu_cmd_buffer *cmd, MESA_VK_DYNAMIC_IA_PRIMITIVE_TOPOLOGY) || BITSET_TEST(cmd->vk.dynamic_graphics_state.dirty, MESA_VK_DYNAMIC_RS_LINE_MODE) || - (cmd->state.dirty & TU_CMD_DIRTY_TES)) { + (cmd->state.dirty & TU_CMD_DIRTY_TES) || + (cmd->state.dirty & TU_CMD_DIRTY_DRAW_STATE)) { tu6_update_msaa_disable(cmd); } if (BITSET_TEST(cmd->vk.dynamic_graphics_state.dirty, - MESA_VK_DYNAMIC_MS_RASTERIZATION_SAMPLES)) { + MESA_VK_DYNAMIC_MS_RASTERIZATION_SAMPLES) || + (cmd->state.dirty & TU_CMD_DIRTY_DRAW_STATE)) { tu6_update_msaa(cmd); }