From ef418cfc5913dbd0830bb2b42d6d27d8ce4a0639 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 14 May 2021 14:56:35 -0400 Subject: [PATCH] zink: make init_mem_range() a public function Acked-by: Dave Airlie Part-of: --- src/gallium/drivers/zink/zink_resource.c | 16 ++++++++-------- src/gallium/drivers/zink/zink_resource.h | 3 ++- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/gallium/drivers/zink/zink_resource.c b/src/gallium/drivers/zink/zink_resource.c index e138763..fc60c76 100644 --- a/src/gallium/drivers/zink/zink_resource.c +++ b/src/gallium/drivers/zink/zink_resource.c @@ -794,15 +794,15 @@ align_offset_size(const VkDeviceSize alignment, VkDeviceSize *offset, VkDeviceSi *size += align; } -static VkMappedMemoryRange -init_mem_range(struct zink_screen *screen, struct zink_resource *res, VkDeviceSize offset, VkDeviceSize size) +VkMappedMemoryRange +zink_resource_init_mem_range(struct zink_screen *screen, struct zink_resource_object *obj, VkDeviceSize offset, VkDeviceSize size) { - assert(res->obj->size); - align_offset_size(screen->info.props.limits.nonCoherentAtomSize, &offset, &size, res->obj->size); + assert(obj->size); + align_offset_size(screen->info.props.limits.nonCoherentAtomSize, &offset, &size, obj->size); VkMappedMemoryRange range = { VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE, NULL, - res->obj->mem, + obj->mem, offset, size }; @@ -942,7 +942,7 @@ buffer_transfer_map(struct zink_context *ctx, struct zink_resource *res, unsigne ) { VkDeviceSize size = box->width; VkDeviceSize offset = res->obj->offset + trans->offset + box->x; - VkMappedMemoryRange range = init_mem_range(screen, res, offset, size); + VkMappedMemoryRange range = zink_resource_init_mem_range(screen, res->obj, offset, size); if (vkInvalidateMappedMemoryRanges(screen->dev, 1, &range) != VK_SUCCESS) { vkUnmapMemory(screen->dev, res->obj->mem); return NULL; @@ -1065,7 +1065,7 @@ zink_transfer_map(struct pipe_context *pctx, (box->x / desc->block.width) * (desc->block.bits / 8); if (!res->obj->coherent) { VkDeviceSize size = box->width * box->height * desc->block.bits / 8; - VkMappedMemoryRange range = init_mem_range(screen, res, res->obj->offset + offset, size); + VkMappedMemoryRange range = zink_resource_init_mem_range(screen, res->obj, res->obj->offset + offset, size); vkFlushMappedMemoryRanges(screen->dev, 1, &range); } ptr = ((uint8_t *)base) + offset; @@ -1104,7 +1104,7 @@ zink_transfer_flush_region(struct pipe_context *pctx, assert(offset + size <= res->obj->size); } if (!m->obj->coherent) { - VkMappedMemoryRange range = init_mem_range(screen, m, m->obj->offset, m->obj->size); + VkMappedMemoryRange range = zink_resource_init_mem_range(screen, m->obj, m->obj->offset, m->obj->size); vkFlushMappedMemoryRanges(screen->dev, 1, &range); } if (trans->staging_res) { diff --git a/src/gallium/drivers/zink/zink_resource.h b/src/gallium/drivers/zink/zink_resource.h index 219bcaa..f0a6abe 100644 --- a/src/gallium/drivers/zink/zink_resource.h +++ b/src/gallium/drivers/zink/zink_resource.h @@ -145,7 +145,8 @@ void zink_get_depth_stencil_resources(struct pipe_resource *res, struct zink_resource **out_z, struct zink_resource **out_s); - +VkMappedMemoryRange +zink_resource_init_mem_range(struct zink_screen *screen, struct zink_resource_object *obj, VkDeviceSize offset, VkDeviceSize size); void zink_resource_setup_transfer_layouts(struct zink_context *ctx, struct zink_resource *src, struct zink_resource *dst); -- 2.7.4