drm/i915: Remove FIXME_lrc_ctx backpointer
The first pass implementation of execlists required a backpointer to the context to be held in the intel_ringbuffer. However the context pointer is available higher in the call stack. Remove the backpointer from the ring buffer structure and instead pass it down through the call stack. v2: Integrate this changeset with the removal of duplicate request/execlist queue item members. v3: Rebase v4: Rebase. Remove passing of context when the request is passed. 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>
This commit is contained in:

committed by
Daniel Vetter

parent
72f95afa5f
commit
21076372af
@@ -99,13 +99,6 @@ struct intel_ringbuffer {
|
||||
|
||||
struct intel_engine_cs *ring;
|
||||
|
||||
/*
|
||||
* FIXME: This backpointer is an artifact of the history of how the
|
||||
* execlist patches came into being. It will get removed once the basic
|
||||
* code has landed.
|
||||
*/
|
||||
struct intel_context *FIXME_lrc_ctx;
|
||||
|
||||
u32 head;
|
||||
u32 tail;
|
||||
int space;
|
||||
@@ -123,6 +116,8 @@ struct intel_ringbuffer {
|
||||
u32 last_retired_head;
|
||||
};
|
||||
|
||||
struct intel_context;
|
||||
|
||||
struct intel_engine_cs {
|
||||
const char *name;
|
||||
enum intel_ring_id {
|
||||
@@ -242,9 +237,11 @@ struct intel_engine_cs {
|
||||
int (*emit_request)(struct intel_ringbuffer *ringbuf,
|
||||
struct drm_i915_gem_request *request);
|
||||
int (*emit_flush)(struct intel_ringbuffer *ringbuf,
|
||||
struct intel_context *ctx,
|
||||
u32 invalidate_domains,
|
||||
u32 flush_domains);
|
||||
int (*emit_bb_start)(struct intel_ringbuffer *ringbuf,
|
||||
struct intel_context *ctx,
|
||||
u64 offset, unsigned flags);
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user