Ensures that the batch buffer is executed by the resource streamer. And will let userspace know whether Resource Streamer is supported in the kernel. v2: Don't skip 1<<15 for the exec flags (Jani Nikula) v3: Use HAS_RESOURCE_STREAMER macro for execbuf validation (Chris Wilson) (from getparam patch) v2: Update I915_PARAM_HAS_RESOURCE_STREAMER so it's after I915_PARAM_HAS_GPU_RESET. v3: Only advertise RS support for hardware that supports it. v4: Add HAS_RESOURCE_STREAMER() macro (Chris)
Showing the changes to include/uapi/drm (1 of 4 files). Show all
Unified · Split
| @@ -355,6 +355,7 @@ typedef struct drm_i915_irq_wait { · 354 unmodified lines | |||
| 355 | #define I915_PARAM_SUBSLICE_TOTAL 33 | 355 | #define I915_PARAM_SUBSLICE_TOTAL 33 |
| 356 | #define I915_PARAM_EU_TOTAL 34 | 356 | #define I915_PARAM_EU_TOTAL 34 |
| 357 | #define I915_PARAM_HAS_GPU_RESET 35 | 357 | #define I915_PARAM_HAS_GPU_RESET 35 |
| 358 | #define I915_PARAM_HAS_RESOURCE_STREAMER 36 | ||
| 358 | 359 | ||
| 359 | typedef struct drm_i915_getparam { | 360 | typedef struct drm_i915_getparam { |
| 360 | int param; | 361 | int param; |
| @@ -765,7 +766,12 @@ struct drm_i915_gem_execbuffer2 { · 404 unmodified lines | |||
| 765 | #define I915_EXEC_BSD_RING1 (1<<13) | 766 | #define I915_EXEC_BSD_RING1 (1<<13) |
| 766 | #define I915_EXEC_BSD_RING2 (2<<13) | 767 | #define I915_EXEC_BSD_RING2 (2<<13) |
| 767 | 768 | ||
| 768 | #define __I915_EXEC_UNKNOWN_FLAGS -(1<<15) | 769 | /** Tell the kernel that the batchbuffer is processed by |
| 770 | * the resource streamer. | ||
| 771 | */ | ||
| 772 | #define I915_EXEC_RESOURCE_STREAMER (1<<15) | ||
| 773 | |||
| 774 | #define __I915_EXEC_UNKNOWN_FLAGS -(I915_EXEC_RESOURCE_STREAMER<<1) | ||
| 769 | 775 | ||
| 770 | #define I915_EXEC_CONTEXT_ID_MASK (0xffffffff) | 776 | #define I915_EXEC_CONTEXT_ID_MASK (0xffffffff) |
| 771 | #define i915_execbuffer2_set_context_id(eb2, context) \ | 777 | #define i915_execbuffer2_set_context_id(eb2, context) \ |