mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 21:10:12 +01:00
hasvk: Add extra memory types for hasvk driver instead of a single one
Replicates a fix from Anv. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Signed-off-by: Illia Polishchuk <illia.a.polishchuk@globallogic.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7360 Tested-by: Matti Hämäläinen <ccr@tnsp.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20720>
This commit is contained in:
parent
8491b1fd5e
commit
530a62ce73
1 changed files with 15 additions and 6 deletions
|
|
@ -403,14 +403,23 @@ anv_physical_device_init_heaps(struct anv_physical_device *device, int fd)
|
|||
|
||||
/* Big core GPUs share LLC with the CPU and thus one memory type can be
|
||||
* both cached and coherent at the same time.
|
||||
*
|
||||
* But some game engines can't handle single type well
|
||||
* https://gitlab.freedesktop.org/mesa/mesa/-/issues/7360#note_1719438
|
||||
*
|
||||
* And Intel on Windows uses 3 types so it's better to add extra one here
|
||||
*/
|
||||
device->memory.type_count = 1;
|
||||
device->memory.type_count = 2;
|
||||
device->memory.types[0] = (struct anv_memory_type) {
|
||||
.propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT |
|
||||
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |
|
||||
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT |
|
||||
VK_MEMORY_PROPERTY_HOST_CACHED_BIT,
|
||||
.heapIndex = 0,
|
||||
.propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT,
|
||||
.heapIndex = 0,
|
||||
};
|
||||
device->memory.types[1] = (struct anv_memory_type) {
|
||||
.propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT |
|
||||
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |
|
||||
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT |
|
||||
VK_MEMORY_PROPERTY_HOST_CACHED_BIT,
|
||||
.heapIndex = 0,
|
||||
};
|
||||
} else {
|
||||
device->memory.heap_count = 1;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue