• Matthew Auld's avatar
    drm/i915/uapi: implement object placement extension · 2459e56f
    Matthew Auld authored
    Add new extension to support setting an immutable-priority-list of
    potential placements, at creation time.
    
    If we use the normal gem_create or gem_create_ext without the
    extensions/placements then we still get the old behaviour with only
    placing the object in system memory.
    
    v2(Daniel & Jason):
        - Add a bunch of kernel-doc
        - Simplify design for placements extension
    
    Testcase: igt/gem_create/create-ext-placement-sanity-check
    Testcase: igt/gem_create/create-ext-placement-each
    Testcase: igt/gem_create/create-ext-placement-all
    Signed-off-by: default avatarMatthew Auld <matthew.auld@intel.com>
    Signed-off-by: default avatarCQ Tang <cq.tang@intel.com>
    Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
    Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
    Cc: Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com>
    Cc: Jordan Justen <jordan.l.justen@intel.com>
    Cc: Daniel Vetter <daniel.vetter@intel.com>
    Cc: Kenneth Graunke <kenneth@whitecape.org>
    Cc: Jason Ekstrand <jason@jlekstrand.net>
    Cc: Dave Airlie <airlied@gmail.com>
    Cc: dri-devel@lists.freedesktop.org
    Cc: mesa-dev@lists.freedesktop.org
    Reviewed-by: default avatarKenneth Graunke <kenneth@whitecape.org>
    Link: https://patchwork.freedesktop.org/patch/msgid/20210429103056.407067-6-matthew.auld@intel.com
    2459e56f
i915_gem_mman.c 32.8 KB