From c17e2216dd5f2ace77e44a8008b2b177d633b05e Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Wed, 9 Dec 2020 14:24:14 -0800 Subject: [PATCH] anv: Align buffer VMA to 2MiB for XeHP Signed-off-by: Jordan Justen Reviewed-by: Kenneth Graunke Part-of: --- src/intel/vulkan/anv_allocator.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/intel/vulkan/anv_allocator.c b/src/intel/vulkan/anv_allocator.c index 7a87175cc7f..f4e03286383 100644 --- a/src/intel/vulkan/anv_allocator.c +++ b/src/intel/vulkan/anv_allocator.c @@ -1626,6 +1626,12 @@ anv_bo_vma_alloc_or_close(struct anv_device *device, if (device->info.ver >= 12 && (alloc_flags & ANV_BO_ALLOC_IMPLICIT_CCS)) align = 64 * 1024; + /* For XeHP, lmem and smem cannot share a single PDE, which means they + * can't live in the same 2MiB aligned region. + */ + if (device->info.verx10 >= 125) + align = 2 * 1024 * 1024; + if (alloc_flags & ANV_BO_ALLOC_FIXED_ADDRESS) { bo->has_fixed_address = true; bo->offset = explicit_address;