diff options
author | Nick Hoath <nicholas.hoath@intel.com> | 2015-01-15 13:10:36 +0000 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-01-27 09:50:52 +0100 |
commit | 2d12955a3e539f0938b4b90d1eade852105ba290 (patch) | |
tree | 6a60073d802904453d3faca49fecf63aa884b382 /drivers/gpu/drm/i915/intel_lrc.h | |
parent | 16f3f658e5f808235c04f0ac157e9b5c8916d7a3 (diff) | |
download | blackbird-obmc-linux-2d12955a3e539f0938b4b90d1eade852105ba290.tar.gz blackbird-obmc-linux-2d12955a3e539f0938b4b90d1eade852105ba290.zip |
drm/i915: execlist request keeps ptr/ref to gem_request
Add a reference and pointer from the execlist queue item to the associated
gem request. For execlist requests that don't have a request, create one
as a placeholder.
Issue: VIZ-4274
v1: Rebase after upstream of "Replace seqno values with request structures" patchset.
Signed-off-by: Nick Hoath <nicholas.hoath@intel.com>
Reviewed-by: Thomas Daniel <thomas.daniel@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_lrc.h')
-rw-r--r-- | drivers/gpu/drm/i915/intel_lrc.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_lrc.h b/drivers/gpu/drm/i915/intel_lrc.h index 960fcbd2c98a..7a82bc9b03a7 100644 --- a/drivers/gpu/drm/i915/intel_lrc.h +++ b/drivers/gpu/drm/i915/intel_lrc.h @@ -39,7 +39,9 @@ void intel_logical_ring_cleanup(struct intel_engine_cs *ring); int intel_logical_rings_init(struct drm_device *dev); int logical_ring_flush_all_caches(struct intel_ringbuffer *ringbuf); -void intel_logical_ring_advance_and_submit(struct intel_ringbuffer *ringbuf); +void intel_logical_ring_advance_and_submit( + struct intel_ringbuffer *ringbuf, + struct drm_i915_gem_request *request); /** * intel_logical_ring_advance() - advance the ringbuffer tail * @ringbuf: Ringbuffer to advance. @@ -110,6 +112,8 @@ struct intel_ctx_submit_request { struct list_head execlist_link; int elsp_submitted; + + struct drm_i915_gem_request *request; }; void intel_lrc_irq_handler(struct intel_engine_cs *ring); |