mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2024-12-14 04:34:23 +08:00
drm-uapi/i915_drm.h: Update from drm-next (2022-05-06)
git://anongit.freedesktop.org/drm/drm 98bcaafd7fb06647529227561ee72e37d3f00ff0 This defines I915_ENGINE_CLASS_COMPUTE to access the compute engine when available. Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14395>
This commit is contained in:
parent
aaf6eb6c46
commit
2d0edbbd37
@ -154,21 +154,71 @@ enum i915_mocs_table_index {
|
||||
I915_MOCS_CACHED,
|
||||
};
|
||||
|
||||
/*
|
||||
/**
|
||||
* enum drm_i915_gem_engine_class - uapi engine type enumeration
|
||||
*
|
||||
* Different engines serve different roles, and there may be more than one
|
||||
* engine serving each role. enum drm_i915_gem_engine_class provides a
|
||||
* classification of the role of the engine, which may be used when requesting
|
||||
* operations to be performed on a certain subset of engines, or for providing
|
||||
* information about that group.
|
||||
* engine serving each role. This enum provides a classification of the role
|
||||
* of the engine, which may be used when requesting operations to be performed
|
||||
* on a certain subset of engines, or for providing information about that
|
||||
* group.
|
||||
*/
|
||||
enum drm_i915_gem_engine_class {
|
||||
/**
|
||||
* @I915_ENGINE_CLASS_RENDER:
|
||||
*
|
||||
* Render engines support instructions used for 3D, Compute (GPGPU),
|
||||
* and programmable media workloads. These instructions fetch data and
|
||||
* dispatch individual work items to threads that operate in parallel.
|
||||
* The threads run small programs (called "kernels" or "shaders") on
|
||||
* the GPU's execution units (EUs).
|
||||
*/
|
||||
I915_ENGINE_CLASS_RENDER = 0,
|
||||
|
||||
/**
|
||||
* @I915_ENGINE_CLASS_COPY:
|
||||
*
|
||||
* Copy engines (also referred to as "blitters") support instructions
|
||||
* that move blocks of data from one location in memory to another,
|
||||
* or that fill a specified location of memory with fixed data.
|
||||
* Copy engines can perform pre-defined logical or bitwise operations
|
||||
* on the source, destination, or pattern data.
|
||||
*/
|
||||
I915_ENGINE_CLASS_COPY = 1,
|
||||
|
||||
/**
|
||||
* @I915_ENGINE_CLASS_VIDEO:
|
||||
*
|
||||
* Video engines (also referred to as "bit stream decode" (BSD) or
|
||||
* "vdbox") support instructions that perform fixed-function media
|
||||
* decode and encode.
|
||||
*/
|
||||
I915_ENGINE_CLASS_VIDEO = 2,
|
||||
|
||||
/**
|
||||
* @I915_ENGINE_CLASS_VIDEO_ENHANCE:
|
||||
*
|
||||
* Video enhancement engines (also referred to as "vebox") support
|
||||
* instructions related to image enhancement.
|
||||
*/
|
||||
I915_ENGINE_CLASS_VIDEO_ENHANCE = 3,
|
||||
|
||||
/* should be kept compact */
|
||||
/**
|
||||
* @I915_ENGINE_CLASS_COMPUTE:
|
||||
*
|
||||
* Compute engines support a subset of the instructions available
|
||||
* on render engines: compute engines support Compute (GPGPU) and
|
||||
* programmable media workloads, but do not support the 3D pipeline.
|
||||
*/
|
||||
I915_ENGINE_CLASS_COMPUTE = 4,
|
||||
|
||||
/* Values in this enum should be kept compact. */
|
||||
|
||||
/**
|
||||
* @I915_ENGINE_CLASS_INVALID:
|
||||
*
|
||||
* Placeholder value to represent an invalid engine class assignment.
|
||||
*/
|
||||
I915_ENGINE_CLASS_INVALID = -1
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user