• Matthew Auld's avatar
    drm/i915/uapi: introduce drm_i915_gem_create_ext · ebcb4029
    Matthew Auld authored
    Same old gem_create but with now with extensions support. This is needed
    to support various upcoming usecases.
    
    v2:(Chris)
        - Use separate ioctl number for gem_create_ext, instead of hijacking
          the existing gem_create ioctl, otherwise we run into the issue
          with being unable to detect if the kernel supports the new extension
          behaviour.
        - We now have gem_create_ext.flags, which should be zeroed.
        - I915_GEM_CREATE_EXT_SETPARAM value is now zero, since this is the
          index into our array of extensions.
        - Setup a "vanilla" object which we can directly apply our extensions
          to.
    v3:(Daniel & Jason)
        - drop I915_GEM_CREATE_EXT_SETPARAM. Instead just have each extension
          do one thing only, instead of generic setparam which can cover
          various use cases.
        - add some kernel-doc.
    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-5-matthew.auld@intel.com
    ebcb4029
i915_drm.h 84.8 KB