From 9c83e9f120f0f4d20362048c7bfe1ef47118d5ff Mon Sep 17 00:00:00 2001 From: Faith Ekstrand Date: Wed, 11 Jun 2025 13:50:08 -0400 Subject: [PATCH] nvk: Drop nvk_buffer_address() Part-of: --- src/nouveau/vulkan/nvk_buffer.c | 2 +- src/nouveau/vulkan/nvk_buffer.h | 6 ------ src/nouveau/vulkan/nvk_buffer_view.c | 2 +- src/nouveau/vulkan/nvk_cmd_copy.c | 10 ++++----- src/nouveau/vulkan/nvk_cmd_dispatch.c | 2 +- src/nouveau/vulkan/nvk_cmd_draw.c | 31 ++++++++++++++------------- src/nouveau/vulkan/nvk_query_pool.c | 2 +- 7 files changed, 25 insertions(+), 30 deletions(-) diff --git a/src/nouveau/vulkan/nvk_buffer.c b/src/nouveau/vulkan/nvk_buffer.c index 5eb8340af97..3c3c9fa3091 100644 --- a/src/nouveau/vulkan/nvk_buffer.c +++ b/src/nouveau/vulkan/nvk_buffer.c @@ -289,7 +289,7 @@ nvk_GetBufferOpaqueCaptureAddress(UNUSED VkDevice device, { VK_FROM_HANDLE(nvk_buffer, buffer, pInfo->buffer); - return nvk_buffer_address(buffer, 0); + return vk_buffer_address(&buffer->vk, 0); } VkResult diff --git a/src/nouveau/vulkan/nvk_buffer.h b/src/nouveau/vulkan/nvk_buffer.h index 0775cb94031..43293848f04 100644 --- a/src/nouveau/vulkan/nvk_buffer.h +++ b/src/nouveau/vulkan/nvk_buffer.h @@ -25,12 +25,6 @@ struct nvk_buffer { VK_DEFINE_NONDISP_HANDLE_CASTS(nvk_buffer, vk.base, VkBuffer, VK_OBJECT_TYPE_BUFFER) -static inline uint64_t -nvk_buffer_address(const struct nvk_buffer *buffer, uint64_t offset) -{ - return vk_buffer_address(&buffer->vk, offset); -} - static inline struct nvk_addr_range nvk_buffer_addr_range(const struct nvk_buffer *buffer, uint64_t offset, uint64_t range) diff --git a/src/nouveau/vulkan/nvk_buffer_view.c b/src/nouveau/vulkan/nvk_buffer_view.c index aab3d2af179..a2da3ca8f7b 100644 --- a/src/nouveau/vulkan/nvk_buffer_view.c +++ b/src/nouveau/vulkan/nvk_buffer_view.c @@ -59,7 +59,7 @@ nvk_CreateBufferView(VkDevice _device, if (!view) return vk_error(dev, VK_ERROR_OUT_OF_HOST_MEMORY); - const uint64_t addr = nvk_buffer_address(buffer, view->vk.offset); + const uint64_t addr = vk_buffer_address(&buffer->vk, view->vk.offset); enum pipe_format format = nvk_format_to_pipe_format(view->vk.format); if (nvk_use_edb_buffer_views(pdev)) { diff --git a/src/nouveau/vulkan/nvk_cmd_copy.c b/src/nouveau/vulkan/nvk_cmd_copy.c index 49fc77d3bf2..ee0fe61f88d 100644 --- a/src/nouveau/vulkan/nvk_cmd_copy.c +++ b/src/nouveau/vulkan/nvk_cmd_copy.c @@ -55,7 +55,7 @@ nouveau_copy_rect_buffer(struct nvk_buffer *buf, struct vk_image_buffer_layout buffer_layout) { return (struct nouveau_copy_buffer) { - .base_addr = nvk_buffer_address(buf, offset), + .base_addr = vk_buffer_address(&buf->vk, offset), .image_type = VK_IMAGE_TYPE_2D, .bpp = buffer_layout.element_size_B, .row_stride = buffer_layout.row_stride_B, @@ -341,8 +341,8 @@ nvk_CmdCopyBuffer2(VkCommandBuffer commandBuffer, for (unsigned r = 0; r < pCopyBufferInfo->regionCount; r++) { const VkBufferCopy2 *region = &pCopyBufferInfo->pRegions[r]; - uint64_t src_addr = nvk_buffer_address(src, region->srcOffset); - uint64_t dst_addr = nvk_buffer_address(dst, region->dstOffset); + uint64_t src_addr = vk_buffer_address(&src->vk, region->srcOffset); + uint64_t dst_addr = vk_buffer_address(&dst->vk, region->dstOffset); uint64_t size = region->size; while (size) { @@ -739,7 +739,7 @@ nvk_CmdFillBuffer(VkCommandBuffer commandBuffer, VK_FROM_HANDLE(nvk_cmd_buffer, cmd, commandBuffer); VK_FROM_HANDLE(nvk_buffer, dst_buffer, dstBuffer); - uint64_t dst_addr = nvk_buffer_address(dst_buffer, dstOffset); + uint64_t dst_addr = vk_buffer_address(&dst_buffer->vk, dstOffset); size = vk_buffer_range(&dst_buffer->vk, dstOffset, size); uint32_t max_dim = 1 << 15; @@ -810,7 +810,7 @@ nvk_CmdUpdateBuffer(VkCommandBuffer commandBuffer, VK_FROM_HANDLE(nvk_cmd_buffer, cmd, commandBuffer); VK_FROM_HANDLE(nvk_buffer, dst, dstBuffer); - uint64_t dst_addr = nvk_buffer_address(dst, dstOffset); + uint64_t dst_addr = vk_buffer_address(&dst->vk, dstOffset); uint64_t data_addr; nvk_cmd_buffer_upload_data(cmd, pData, dataSize, 64, &data_addr); diff --git a/src/nouveau/vulkan/nvk_cmd_dispatch.c b/src/nouveau/vulkan/nvk_cmd_dispatch.c index d8423b848b7..5508c8a46f5 100644 --- a/src/nouveau/vulkan/nvk_cmd_dispatch.c +++ b/src/nouveau/vulkan/nvk_cmd_dispatch.c @@ -530,7 +530,7 @@ nvk_CmdDispatchIndirect(VkCommandBuffer commandBuffer, VK_FROM_HANDLE(nvk_cmd_buffer, cmd, commandBuffer); VK_FROM_HANDLE(nvk_buffer, buffer, _buffer); - uint64_t dispatch_addr = nvk_buffer_address(buffer, offset); + uint64_t dispatch_addr = vk_buffer_address(&buffer->vk, offset); /* We set these through the MME */ uint32_t base_workgroup[3] = { 0, 0, 0 }; diff --git a/src/nouveau/vulkan/nvk_cmd_draw.c b/src/nouveau/vulkan/nvk_cmd_draw.c index b2f021f0170..5a83ceb8a71 100644 --- a/src/nouveau/vulkan/nvk_cmd_draw.c +++ b/src/nouveau/vulkan/nvk_cmd_draw.c @@ -4256,7 +4256,7 @@ nvk_CmdDrawIndirect(VkCommandBuffer commandBuffer, if (nvk_cmd_buffer_3d_cls(cmd) >= TURING_A) { struct nv_push *p = nvk_cmd_buffer_push(cmd, 5); P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDIRECT)); - uint64_t draw_addr = nvk_buffer_address(buffer, offset); + uint64_t draw_addr = vk_buffer_address(&buffer->vk, offset); P_INLINE_DATA(p, draw_addr >> 32); P_INLINE_DATA(p, draw_addr); P_INLINE_DATA(p, drawCount); @@ -4265,7 +4265,7 @@ nvk_CmdDrawIndirect(VkCommandBuffer commandBuffer, const uint32_t max_draws_per_push = ((NV_PUSH_MAX_COUNT - 3) * 4) / stride; - uint64_t draw_addr = nvk_buffer_address(buffer, offset); + uint64_t draw_addr = vk_buffer_address(&buffer->vk, offset); while (drawCount) { const uint32_t count = MIN2(drawCount, max_draws_per_push); @@ -4356,7 +4356,7 @@ nvk_CmdDrawIndexedIndirect(VkCommandBuffer commandBuffer, if (nvk_cmd_buffer_3d_cls(cmd) >= TURING_A) { struct nv_push *p = nvk_cmd_buffer_push(cmd, 5); P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDEXED_INDIRECT)); - uint64_t draw_addr = nvk_buffer_address(buffer, offset); + uint64_t draw_addr = vk_buffer_address(&buffer->vk, offset); P_INLINE_DATA(p, draw_addr >> 32); P_INLINE_DATA(p, draw_addr); P_INLINE_DATA(p, drawCount); @@ -4365,7 +4365,7 @@ nvk_CmdDrawIndexedIndirect(VkCommandBuffer commandBuffer, const uint32_t max_draws_per_push = ((NV_PUSH_MAX_COUNT - 3) * 4) / stride; - uint64_t draw_addr = nvk_buffer_address(buffer, offset); + uint64_t draw_addr = vk_buffer_address(&buffer->vk, offset); while (drawCount) { const uint32_t count = MIN2(drawCount, max_draws_per_push); @@ -4435,11 +4435,11 @@ nvk_CmdDrawIndirectCount(VkCommandBuffer commandBuffer, struct nv_push *p = nvk_cmd_buffer_push(cmd, 7); P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDIRECT_COUNT)); - uint64_t draw_addr = nvk_buffer_address(buffer, offset); + uint64_t draw_addr = vk_buffer_address(&buffer->vk, offset); P_INLINE_DATA(p, draw_addr >> 32); P_INLINE_DATA(p, draw_addr); - uint64_t draw_count_addr = nvk_buffer_address(count_buffer, - countBufferOffset); + uint64_t draw_count_addr = vk_buffer_address(&count_buffer->vk, + countBufferOffset); P_INLINE_DATA(p, draw_count_addr >> 32); P_INLINE_DATA(p, draw_count_addr); P_INLINE_DATA(p, maxDrawCount); @@ -4497,11 +4497,11 @@ nvk_CmdDrawIndexedIndirectCount(VkCommandBuffer commandBuffer, struct nv_push *p = nvk_cmd_buffer_push(cmd, 7); P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_DRAW_INDEXED_INDIRECT_COUNT)); - uint64_t draw_addr = nvk_buffer_address(buffer, offset); + uint64_t draw_addr = vk_buffer_address(&buffer->vk, offset); P_INLINE_DATA(p, draw_addr >> 32); P_INLINE_DATA(p, draw_addr); - uint64_t draw_count_addr = nvk_buffer_address(count_buffer, - countBufferOffset); + uint64_t draw_count_addr = vk_buffer_address(&count_buffer->vk, + countBufferOffset); P_INLINE_DATA(p, draw_count_addr >> 32); P_INLINE_DATA(p, draw_count_addr); P_INLINE_DATA(p, maxDrawCount); @@ -4600,8 +4600,8 @@ nvk_CmdDrawIndirectByteCountEXT(VkCommandBuffer commandBuffer, nvk_cmd_flush_gfx_state(cmd); - uint64_t counter_addr = nvk_buffer_address(counter_buffer, - counterBufferOffset); + uint64_t counter_addr = vk_buffer_address(&counter_buffer->vk, + counterBufferOffset); if (nvk_cmd_buffer_3d_cls(cmd) >= TURING_A) { struct nv_push *p = nvk_cmd_buffer_push(cmd, 9); @@ -4706,7 +4706,7 @@ nvk_CmdBeginTransformFeedbackEXT(VkCommandBuffer commandBuffer, // index of counter buffer corresponts to index of transform buffer uint32_t cb_idx = firstCounterBuffer + i; uint64_t offset = pCounterBufferOffsets ? pCounterBufferOffsets[i] : 0; - uint64_t cb_addr = nvk_buffer_address(buffer, offset); + uint64_t cb_addr = vk_buffer_address(&buffer->vk, offset); if (nvk_cmd_buffer_3d_cls(cmd) >= TURING_A) { struct nv_push *p = nvk_cmd_buffer_push(cmd, 4); @@ -4746,7 +4746,7 @@ nvk_CmdEndTransformFeedbackEXT(VkCommandBuffer commandBuffer, // index of counter buffer corresponts to index of transform buffer uint32_t cb_idx = firstCounterBuffer + i; uint64_t offset = pCounterBufferOffsets ? pCounterBufferOffsets[i] : 0; - uint64_t cb_addr = nvk_buffer_address(buffer, offset); + uint64_t cb_addr = vk_buffer_address(&buffer->vk, offset); P_MTHD(p, NV9097, SET_REPORT_SEMAPHORE_A); P_NV9097_SET_REPORT_SEMAPHORE_A(p, cb_addr >> 32); @@ -4769,7 +4769,8 @@ nvk_CmdBeginConditionalRenderingEXT(VkCommandBuffer commandBuffer, VK_FROM_HANDLE(nvk_cmd_buffer, cmd, commandBuffer); VK_FROM_HANDLE(nvk_buffer, buffer, pConditionalRenderingBegin->buffer); - uint64_t addr = nvk_buffer_address(buffer, pConditionalRenderingBegin->offset); + const uint64_t addr = + vk_buffer_address(&buffer->vk, pConditionalRenderingBegin->offset); bool inverted = pConditionalRenderingBegin->flags & VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT; diff --git a/src/nouveau/vulkan/nvk_query_pool.c b/src/nouveau/vulkan/nvk_query_pool.c index feb4ad18702..097da69c989 100644 --- a/src/nouveau/vulkan/nvk_query_pool.c +++ b/src/nouveau/vulkan/nvk_query_pool.c @@ -828,7 +828,7 @@ nvk_CmdCopyQueryPoolResults(VkCommandBuffer commandBuffer, } } - uint64_t dst_addr = nvk_buffer_address(dst_buffer, dstOffset); + uint64_t dst_addr = vk_buffer_address(&dst_buffer->vk, dstOffset); nvk_meta_copy_query_pool_results(cmd, pool, firstQuery, queryCount, dst_addr, stride, flags); }