v3dv: implement host cached memory
Right now v3dv only implements one memory type, with the following flags:
/* This is the only combination required by the spec */
mem->memoryTypeCount = 1;
mem->memoryTypes[0].propertyFlags =
VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT |
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT;
As pointed by that comment, that is the only combination required by the spec. When we started the driver, our focus was getting a conformant 1.0 Vulkan driver, so in several cases we only implemented the required by spec. Several features were expanded after that, but not this one.
Specifically, some users have show interest on host cached memory (VK_MEMORY_PROPERTY_HOST_CACHED_BIT).
This is a #11199 (closed) spin-off issue.