anv: Rework the internal BO allocation API
authorJason Ekstrand <jason@jlekstrand.net>
Fri, 25 Oct 2019 22:45:28 +0000 (17:45 -0500)
committerJason Ekstrand <jason@jlekstrand.net>
Thu, 31 Oct 2019 13:46:09 +0000 (13:46 +0000)
commita44f5ee0d8b16ad61a5c6f87bcfb2b89444c02f2
treea589d38d3bedb9b6991cd0c2edca335578b1c14a
parent1be2e4c0ef25a667a2afc0ce6bad1c3c57761fa0
anv: Rework the internal BO allocation API

This makes a number of changes to the current API:

 1. Everything is renamed to anv_device_* instead of anv_bo_cache_*
    because the BO cache is soon going to be the sole BO allocation path
    and not some special case to make import/export work.

 2. Drop the cache parameter.  It's totally redundant with the device
    and just annoying to keep typing.

 3. Rework flags so that they go the convenient direction for usage in
    ANV rather than whichever awkward way the i915 specified it to
    maintain backwards compatibility.  This also gives us the
    opportunity to set some defaults.

 4. Add flags for mapping and coherency.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
src/intel/vulkan/anv_allocator.c
src/intel/vulkan/anv_device.c
src/intel/vulkan/anv_image.c
src/intel/vulkan/anv_intel.c
src/intel/vulkan/anv_private.h
src/intel/vulkan/anv_queue.c