mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-23 17:40:11 +01:00
lavapipe: implement vkGetDevice*MemoryRequirements
for maint4 Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15378>
This commit is contained in:
parent
49cac7b33d
commit
987e8a5a0c
1 changed files with 44 additions and 0 deletions
|
|
@ -1892,6 +1892,50 @@ VKAPI_ATTR VkResult VKAPI_CALL lvp_InvalidateMappedMemoryRanges(
|
||||||
return VK_SUCCESS;
|
return VK_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VKAPI_ATTR void lvp_GetDeviceBufferMemoryRequirements(
|
||||||
|
VkDevice _device,
|
||||||
|
const VkDeviceBufferMemoryRequirements* pInfo,
|
||||||
|
VkMemoryRequirements2* pMemoryRequirements)
|
||||||
|
{
|
||||||
|
pMemoryRequirements->memoryRequirements.memoryTypeBits = 1;
|
||||||
|
pMemoryRequirements->memoryRequirements.alignment = 64;
|
||||||
|
pMemoryRequirements->memoryRequirements.size = 0;
|
||||||
|
|
||||||
|
VkBuffer _buffer;
|
||||||
|
if (lvp_CreateBuffer(_device, pInfo->pCreateInfo, NULL, &_buffer) != VK_SUCCESS)
|
||||||
|
return;
|
||||||
|
LVP_FROM_HANDLE(lvp_buffer, buffer, _buffer);
|
||||||
|
pMemoryRequirements->memoryRequirements.size = buffer->total_size;
|
||||||
|
lvp_DestroyBuffer(_device, _buffer, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
VKAPI_ATTR void lvp_GetDeviceImageSparseMemoryRequirements(
|
||||||
|
VkDevice device,
|
||||||
|
const VkDeviceImageMemoryRequirements* pInfo,
|
||||||
|
uint32_t* pSparseMemoryRequirementCount,
|
||||||
|
VkSparseImageMemoryRequirements2* pSparseMemoryRequirements)
|
||||||
|
{
|
||||||
|
stub();
|
||||||
|
}
|
||||||
|
|
||||||
|
VKAPI_ATTR void lvp_GetDeviceImageMemoryRequirements(
|
||||||
|
VkDevice _device,
|
||||||
|
const VkDeviceImageMemoryRequirements* pInfo,
|
||||||
|
VkMemoryRequirements2* pMemoryRequirements)
|
||||||
|
{
|
||||||
|
pMemoryRequirements->memoryRequirements.memoryTypeBits = 1;
|
||||||
|
pMemoryRequirements->memoryRequirements.alignment = 0;
|
||||||
|
pMemoryRequirements->memoryRequirements.size = 0;
|
||||||
|
|
||||||
|
VkImage _image;
|
||||||
|
if (lvp_CreateImage(_device, pInfo->pCreateInfo, NULL, &_image) != VK_SUCCESS)
|
||||||
|
return;
|
||||||
|
LVP_FROM_HANDLE(lvp_image, image, _image);
|
||||||
|
pMemoryRequirements->memoryRequirements.size = image->size;
|
||||||
|
pMemoryRequirements->memoryRequirements.alignment = image->alignment;
|
||||||
|
lvp_DestroyImage(_device, _image, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
VKAPI_ATTR void VKAPI_CALL lvp_GetBufferMemoryRequirements(
|
VKAPI_ATTR void VKAPI_CALL lvp_GetBufferMemoryRequirements(
|
||||||
VkDevice device,
|
VkDevice device,
|
||||||
VkBuffer _buffer,
|
VkBuffer _buffer,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue