mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 07:28:11 +02:00
panvk: Re-arrange descriptor set functions
Put them in the order we call them which is also roughly descriptor type enum order. Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16276>
This commit is contained in:
parent
28333e039c
commit
53f53b577f
1 changed files with 40 additions and 40 deletions
|
|
@ -386,46 +386,6 @@ err_free_sets:
|
|||
return result;
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_set_buffer_desc(struct panvk_buffer_desc *bdesc,
|
||||
const VkDescriptorBufferInfo *pBufferInfo)
|
||||
{
|
||||
VK_FROM_HANDLE(panvk_buffer, buffer, pBufferInfo->buffer);
|
||||
|
||||
bdesc->buffer = buffer;
|
||||
bdesc->offset = pBufferInfo->offset;
|
||||
bdesc->size = pBufferInfo->range;
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_per_arch(set_ubo_desc)(void *ubo,
|
||||
const VkDescriptorBufferInfo *pBufferInfo)
|
||||
{
|
||||
VK_FROM_HANDLE(panvk_buffer, buffer, pBufferInfo->buffer);
|
||||
mali_ptr ptr = panvk_buffer_gpu_ptr(buffer, pBufferInfo->offset);
|
||||
size_t size = panvk_buffer_range(buffer, pBufferInfo->offset,
|
||||
pBufferInfo->range);
|
||||
panvk_per_arch(emit_ubo)(ptr, size, ubo);
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_set_ssbo_desc(struct panvk_descriptor_set *set,
|
||||
const struct panvk_descriptor_set_binding_layout *binding_layout,
|
||||
uint32_t idx, const VkDescriptorBufferInfo *pBufferInfo)
|
||||
{
|
||||
VK_FROM_HANDLE(panvk_buffer, buffer, pBufferInfo->buffer);
|
||||
|
||||
void *desc = (char *)set->desc_bo->ptr.cpu +
|
||||
binding_layout->desc_ubo_offset +
|
||||
binding_layout->desc_ubo_stride * idx;
|
||||
|
||||
*(struct panvk_ssbo_addr *)desc = (struct panvk_ssbo_addr) {
|
||||
.base_addr = panvk_buffer_gpu_ptr(buffer, pBufferInfo->offset),
|
||||
.size = panvk_buffer_range(buffer, pBufferInfo->offset,
|
||||
pBufferInfo->range),
|
||||
};
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_set_sampler_desc(void *desc,
|
||||
const VkDescriptorImageInfo *pImageInfo)
|
||||
|
|
@ -533,6 +493,46 @@ panvk_set_img_buf_desc(struct panvk_device *dev,
|
|||
panvk_fill_bview_desc(desc, view);
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_per_arch(set_ubo_desc)(void *ubo,
|
||||
const VkDescriptorBufferInfo *pBufferInfo)
|
||||
{
|
||||
VK_FROM_HANDLE(panvk_buffer, buffer, pBufferInfo->buffer);
|
||||
mali_ptr ptr = panvk_buffer_gpu_ptr(buffer, pBufferInfo->offset);
|
||||
size_t size = panvk_buffer_range(buffer, pBufferInfo->offset,
|
||||
pBufferInfo->range);
|
||||
panvk_per_arch(emit_ubo)(ptr, size, ubo);
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_set_buffer_desc(struct panvk_buffer_desc *bdesc,
|
||||
const VkDescriptorBufferInfo *pBufferInfo)
|
||||
{
|
||||
VK_FROM_HANDLE(panvk_buffer, buffer, pBufferInfo->buffer);
|
||||
|
||||
bdesc->buffer = buffer;
|
||||
bdesc->offset = pBufferInfo->offset;
|
||||
bdesc->size = pBufferInfo->range;
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_set_ssbo_desc(struct panvk_descriptor_set *set,
|
||||
const struct panvk_descriptor_set_binding_layout *binding_layout,
|
||||
uint32_t idx, const VkDescriptorBufferInfo *pBufferInfo)
|
||||
{
|
||||
VK_FROM_HANDLE(panvk_buffer, buffer, pBufferInfo->buffer);
|
||||
|
||||
void *desc = (char *)set->desc_bo->ptr.cpu +
|
||||
binding_layout->desc_ubo_offset +
|
||||
binding_layout->desc_ubo_stride * idx;
|
||||
|
||||
*(struct panvk_ssbo_addr *)desc = (struct panvk_ssbo_addr) {
|
||||
.base_addr = panvk_buffer_gpu_ptr(buffer, pBufferInfo->offset),
|
||||
.size = panvk_buffer_range(buffer, pBufferInfo->offset,
|
||||
pBufferInfo->range),
|
||||
};
|
||||
}
|
||||
|
||||
static void
|
||||
panvk_per_arch(write_descriptor_set)(struct panvk_device *dev,
|
||||
const VkWriteDescriptorSet *pDescriptorWrite)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue