anv: Implement flush_buffer_write_cp callbck

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31588>
This commit is contained in:
Sagar Ghuge
2024-05-21 17:42:07 -07:00
committed by Marge Bot
parent b2cffdb1ed
commit 0cab02ca9b
2 changed files with 16 additions and 0 deletions

View File

@@ -1555,3 +1555,17 @@ anv_cmd_write_buffer_cp(VkCommandBuffer commandBuffer,
anv_genX(cmd_buffer->device->info, cmd_write_buffer_cp)(cmd_buffer, dstAddr,
data, size);
}
void
anv_cmd_flush_buffer_write_cp(VkCommandBuffer commandBuffer)
{
/* TODO: cmd_write_buffer_cp is implemented with MI store +
* ForceWriteCompletionCheck so that should make the content globally
* observable.
*
* If we encounter any functional or perf bottleneck issues, let's revisit
* this helper and add ANV_PIPE_HDC_PIPELINE_FLUSH_BIT +
* ANV_PIPE_UNTYPED_DATAPORT_CACHE_FLUSH_BIT +
* ANV_PIPE_DATA_CACHE_FLUSH_BIT.
*/
}

View File

@@ -5910,6 +5910,8 @@ anv_cmd_write_buffer_cp(VkCommandBuffer cmd_buffer,
VkDeviceAddress dstAddr,
void *data,
uint32_t size);
void
anv_cmd_flush_buffer_write_cp(VkCommandBuffer cmd_buffer);
VkResult
anv_cmd_buffer_ensure_rcs_companion(struct anv_cmd_buffer *cmd_buffer);