diff --git a/src/broadcom/vulkan/v3dv_cmd_buffer.c b/src/broadcom/vulkan/v3dv_cmd_buffer.c index 96ddcff6c1c..fc8de8e271e 100644 --- a/src/broadcom/vulkan/v3dv_cmd_buffer.c +++ b/src/broadcom/vulkan/v3dv_cmd_buffer.c @@ -3102,7 +3102,8 @@ v3dv_CmdPushConstants(VkCommandBuffer commandBuffer, cmd_buffer->state.push_constants_size = MAX2(offset + size, cmd_buffer->state.push_constants_size); - cmd_buffer->state.dirty |= V3DV_CMD_DIRTY_PUSH_CONSTANTS; + cmd_buffer->state.dirty |= V3DV_CMD_DIRTY_PUSH_CONSTANTS | + V3DV_CMD_DIRTY_PUSH_CONSTANTS_UBO; cmd_buffer->state.dirty_push_constants_stages |= stageFlags; } diff --git a/src/broadcom/vulkan/v3dv_private.h b/src/broadcom/vulkan/v3dv_private.h index 723c924d17b..d6e160bc074 100644 --- a/src/broadcom/vulkan/v3dv_private.h +++ b/src/broadcom/vulkan/v3dv_private.h @@ -885,12 +885,13 @@ enum v3dv_cmd_dirty_bits { V3DV_CMD_DIRTY_DESCRIPTOR_SETS = 1 << 9, V3DV_CMD_DIRTY_COMPUTE_DESCRIPTOR_SETS = 1 << 10, V3DV_CMD_DIRTY_PUSH_CONSTANTS = 1 << 11, - V3DV_CMD_DIRTY_BLEND_CONSTANTS = 1 << 12, - V3DV_CMD_DIRTY_OCCLUSION_QUERY = 1 << 13, - V3DV_CMD_DIRTY_DEPTH_BIAS = 1 << 14, - V3DV_CMD_DIRTY_LINE_WIDTH = 1 << 15, - V3DV_CMD_DIRTY_VIEW_INDEX = 1 << 16, - V3DV_CMD_DIRTY_COLOR_WRITE_ENABLE = 1 << 17, + V3DV_CMD_DIRTY_PUSH_CONSTANTS_UBO = 1 << 12, + V3DV_CMD_DIRTY_BLEND_CONSTANTS = 1 << 13, + V3DV_CMD_DIRTY_OCCLUSION_QUERY = 1 << 14, + V3DV_CMD_DIRTY_DEPTH_BIAS = 1 << 15, + V3DV_CMD_DIRTY_LINE_WIDTH = 1 << 16, + V3DV_CMD_DIRTY_VIEW_INDEX = 1 << 17, + V3DV_CMD_DIRTY_COLOR_WRITE_ENABLE = 1 << 18, }; struct v3dv_dynamic_state { diff --git a/src/broadcom/vulkan/v3dv_uniforms.c b/src/broadcom/vulkan/v3dv_uniforms.c index 7afb7817ba7..425b84e0e1a 100644 --- a/src/broadcom/vulkan/v3dv_uniforms.c +++ b/src/broadcom/vulkan/v3dv_uniforms.c @@ -94,7 +94,7 @@ static void check_push_constants_ubo(struct v3dv_cmd_buffer *cmd_buffer, struct v3dv_pipeline *pipeline) { - if (!(cmd_buffer->state.dirty & V3DV_CMD_DIRTY_PUSH_CONSTANTS) || + if (!(cmd_buffer->state.dirty & V3DV_CMD_DIRTY_PUSH_CONSTANTS_UBO) || pipeline->layout->push_constant_size == 0) return; @@ -146,7 +146,7 @@ check_push_constants_ubo(struct v3dv_cmd_buffer *cmd_buffer, cmd_buffer->state.push_constants_data, cmd_buffer->state.push_constants_size); - cmd_buffer->state.dirty &= ~V3DV_CMD_DIRTY_PUSH_CONSTANTS; + cmd_buffer->state.dirty &= ~V3DV_CMD_DIRTY_PUSH_CONSTANTS_UBO; } /** V3D 4.x TMU configuration parameter 0 (texture) */