mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 09:08:10 +02:00
anv: Move update buffer code in helper
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:
parent
0edf208ab9
commit
8817ff26fc
2 changed files with 32 additions and 12 deletions
|
|
@ -1093,17 +1093,15 @@ void anv_CmdCopyBuffer2(
|
|||
anv_blorp_batch_finish(&batch);
|
||||
}
|
||||
|
||||
|
||||
void anv_CmdUpdateBuffer(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkBuffer dstBuffer,
|
||||
void
|
||||
anv_cmd_buffer_update_addr(
|
||||
struct anv_cmd_buffer* cmd_buffer,
|
||||
struct anv_address address,
|
||||
VkDeviceSize dstOffset,
|
||||
VkDeviceSize dataSize,
|
||||
const void* pData)
|
||||
const void* pData,
|
||||
bool is_protected)
|
||||
{
|
||||
ANV_FROM_HANDLE(anv_cmd_buffer, cmd_buffer, commandBuffer);
|
||||
ANV_FROM_HANDLE(anv_buffer, dst_buffer, dstBuffer);
|
||||
|
||||
struct blorp_batch batch;
|
||||
anv_blorp_batch_init(cmd_buffer, &batch,
|
||||
cmd_buffer->state.current_pipeline ==
|
||||
|
|
@ -1144,13 +1142,13 @@ void anv_CmdUpdateBuffer(
|
|||
false /* protected */)),
|
||||
};
|
||||
struct blorp_address dst = {
|
||||
.buffer = dst_buffer->address.bo,
|
||||
.offset = dst_buffer->address.offset + dstOffset,
|
||||
.mocs = anv_mocs(cmd_buffer->device, dst_buffer->address.bo,
|
||||
.buffer = address.bo,
|
||||
.offset = address.offset + dstOffset,
|
||||
.mocs = anv_mocs(cmd_buffer->device, address.bo,
|
||||
get_usage_flag_for_cmd_buffer(
|
||||
cmd_buffer,
|
||||
true /* is_dest */,
|
||||
anv_buffer_is_protected(dst_buffer))),
|
||||
is_protected)),
|
||||
};
|
||||
|
||||
blorp_buffer_copy(&batch, src, dst, copy_size);
|
||||
|
|
@ -1165,6 +1163,21 @@ void anv_CmdUpdateBuffer(
|
|||
anv_blorp_batch_finish(&batch);
|
||||
}
|
||||
|
||||
void anv_CmdUpdateBuffer(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkBuffer dstBuffer,
|
||||
VkDeviceSize dstOffset,
|
||||
VkDeviceSize dataSize,
|
||||
const void* pData)
|
||||
{
|
||||
ANV_FROM_HANDLE(anv_cmd_buffer, cmd_buffer, commandBuffer);
|
||||
ANV_FROM_HANDLE(anv_buffer, dst_buffer, dstBuffer);
|
||||
|
||||
anv_cmd_buffer_update_addr(cmd_buffer, dst_buffer->address,
|
||||
dstOffset, dataSize, pData,
|
||||
anv_buffer_is_protected(dst_buffer));
|
||||
}
|
||||
|
||||
void
|
||||
anv_cmd_buffer_fill_area(struct anv_cmd_buffer *cmd_buffer,
|
||||
struct anv_address address,
|
||||
|
|
|
|||
|
|
@ -5898,6 +5898,13 @@ anv_cmd_fill_buffer_addr(VkCommandBuffer cmd_buffer,
|
|||
VkDeviceAddress dstAddr,
|
||||
VkDeviceSize size,
|
||||
uint32_t data);
|
||||
void
|
||||
anv_cmd_buffer_update_addr(struct anv_cmd_buffer *cmd_buffer,
|
||||
struct anv_address address,
|
||||
VkDeviceSize dstOffset,
|
||||
VkDeviceSize dataSize,
|
||||
const void* pData,
|
||||
bool is_protected);
|
||||
|
||||
VkResult
|
||||
anv_cmd_buffer_ensure_rcs_companion(struct anv_cmd_buffer *cmd_buffer);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue