venus: use 64KB alignment for suballocations

TGL CCS surface addresses must be aligned to 64KB.

Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15001>
This commit is contained in:
Chia-I Wu 2022-02-11 12:53:44 -08:00 committed by Marge Bot
parent 05a2cea14c
commit 8a30b1541c

View file

@ -155,10 +155,12 @@ vn_device_memory_pool_suballocate(struct vn_device *dev,
uint32_t mem_type_index)
{
const VkDeviceSize pool_size = 16 * 1024 * 1024;
/* XXX We don't know the alignment requirement. We should probably use 64K
* because some GPUs have 64K pages.
/* XXX We don't know the alignment requirement. Use 64K because some GPUs
* have 64K pages. It is also required by newer Intel GPUs. But really we
* should require kernel 5.12+, where there is no KVM memslot limit, and
* remove this whole thing.
*/
const VkDeviceSize pool_align = 4096;
const VkDeviceSize pool_align = 64 * 1024;
struct vn_device_memory_pool *pool = &dev->memory_pools[mem_type_index];
assert(mem->size <= pool_size);