nvk: Drop MME_DMA_SYSMEMBAR before indirect draw/dispatch

This reverts commit 3d3641e446.  We're now
doing this as part of CmdWaitEvents and CmdPipelineBarrier().

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26408>
This commit is contained in:
Faith Ekstrand 2023-11-29 15:24:13 -06:00 committed by Marge Bot
parent 3a38526ff8
commit e0c2244ea9
2 changed files with 7 additions and 14 deletions

View file

@ -389,9 +389,8 @@ nvk_CmdDispatchIndirect(VkCommandBuffer commandBuffer,
if (unlikely(qmd_addr == 0))
return;
struct nv_push *p = nvk_cmd_buffer_push(cmd, 16);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 14);
P_IMMD(p, NVC597, MME_DMA_SYSMEMBAR, 0);
P_IMMD(p, NVC597, SET_MME_DATA_FIFO_CONFIG, FIFO_SIZE_SIZE_4KB);
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DISPATCH_INDIRECT));
P_INLINE_DATA(p, nvk_compute_local_size(cmd));

View file

@ -2129,8 +2129,7 @@ nvk_CmdDrawIndirect(VkCommandBuffer commandBuffer,
});
if (nvk_cmd_buffer_3d_cls(cmd) >= TURING_A) {
struct nv_push *p = nvk_cmd_buffer_push(cmd, 10);
P_IMMD(p, NVC597, MME_DMA_SYSMEMBAR, 0);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 8);
P_IMMD(p, NVC597, SET_MME_DATA_FIFO_CONFIG, FIFO_SIZE_SIZE_4KB);
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDIRECT));
P_INLINE_DATA(p, begin);
@ -2247,8 +2246,7 @@ nvk_CmdDrawIndexedIndirect(VkCommandBuffer commandBuffer,
});
if (nvk_cmd_buffer_3d_cls(cmd) >= TURING_A) {
struct nv_push *p = nvk_cmd_buffer_push(cmd, 10);
P_IMMD(p, NVC597, MME_DMA_SYSMEMBAR, 0);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 8);
P_IMMD(p, NVC597, SET_MME_DATA_FIFO_CONFIG, FIFO_SIZE_SIZE_4KB);
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDEXED_INDIRECT));
P_INLINE_DATA(p, begin);
@ -2345,8 +2343,7 @@ nvk_CmdDrawIndirectCount(VkCommandBuffer commandBuffer,
.split_mode = SPLIT_MODE_NORMAL_BEGIN_NORMAL_END,
});
struct nv_push *p = nvk_cmd_buffer_push(cmd, 12);
P_IMMD(p, NVC597, MME_DMA_SYSMEMBAR, 0);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 10);
P_IMMD(p, NVC597, SET_MME_DATA_FIFO_CONFIG, FIFO_SIZE_SIZE_4KB);
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDIRECT_COUNT));
P_INLINE_DATA(p, begin);
@ -2423,8 +2420,7 @@ nvk_CmdDrawIndexedIndirectCount(VkCommandBuffer commandBuffer,
.split_mode = SPLIT_MODE_NORMAL_BEGIN_NORMAL_END,
});
struct nv_push *p = nvk_cmd_buffer_push(cmd, 12);
P_IMMD(p, NVC597, MME_DMA_SYSMEMBAR, 0);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 10);
P_IMMD(p, NVC597, SET_MME_DATA_FIFO_CONFIG, FIFO_SIZE_SIZE_4KB);
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDEXED_INDIRECT_COUNT));
P_INLINE_DATA(p, begin);
@ -2540,10 +2536,9 @@ nvk_CmdDrawIndirectByteCountEXT(VkCommandBuffer commandBuffer,
});
if (nvk_cmd_buffer_3d_cls(cmd) >= TURING_A) {
struct nv_push *p = nvk_cmd_buffer_push(cmd, 14);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 12);
P_IMMD(p, NV9097, SET_DRAW_AUTO_START, counterOffset);
P_IMMD(p, NV9097, SET_DRAW_AUTO_STRIDE, vertexStride);
P_IMMD(p, NVC597, MME_DMA_SYSMEMBAR, 0);
P_IMMD(p, NVC597, SET_MME_DATA_FIFO_CONFIG, FIFO_SIZE_SIZE_4KB);
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_XFB_DRAW_INDIRECT));
@ -2654,8 +2649,7 @@ nvk_CmdBeginTransformFeedbackEXT(VkCommandBuffer commandBuffer,
uint64_t cb_addr = nvk_buffer_address(buffer, offset);
if (nvk_cmd_buffer_device(cmd)->pdev->info.cls_eng3d >= TURING_A) {
struct nv_push *p = nvk_cmd_buffer_push(cmd, 8);
P_IMMD(p, NVC597, MME_DMA_SYSMEMBAR, 0);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 6);
P_IMMD(p, NVC597, SET_MME_DATA_FIFO_CONFIG, FIFO_SIZE_SIZE_4KB);
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_XFB_COUNTER_LOAD));
P_INLINE_DATA(p, cb_idx);