drm/i915: Use the same vfunc for BSD2 ring init
If we needed to do something different for the init functions, we could always look at the engine instance to make the distinction. But, in any case, the two functions are virtually identical already (please notice that BSD2_RING is only used from gen8 onwards). With this, the init functions depends excusively on the engine class (a fact that we will use soon). v2: Commit message Cc: Paulo Zanoni <paulo.r.zanoni@intel.com> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1491834873-9345-3-git-send-email-oscar.mateo@intel.com Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
parent
0908180b9a
commit
5ff36d36a3
|
@ -79,7 +79,7 @@ static const struct engine_info {
|
||||||
.mmio_base = GEN8_BSD2_RING_BASE,
|
.mmio_base = GEN8_BSD2_RING_BASE,
|
||||||
.irq_shift = GEN8_VCS2_IRQ_SHIFT,
|
.irq_shift = GEN8_VCS2_IRQ_SHIFT,
|
||||||
.init_execlists = logical_xcs_ring_init,
|
.init_execlists = logical_xcs_ring_init,
|
||||||
.init_legacy = intel_init_bsd2_ring_buffer,
|
.init_legacy = intel_init_bsd_ring_buffer,
|
||||||
},
|
},
|
||||||
[VECS] = {
|
[VECS] = {
|
||||||
.name = "vecs",
|
.name = "vecs",
|
||||||
|
|
|
@ -2175,20 +2175,6 @@ int intel_init_bsd_ring_buffer(struct intel_engine_cs *engine)
|
||||||
return intel_init_ring_buffer(engine);
|
return intel_init_ring_buffer(engine);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Initialize the second BSD ring (eg. Broadwell GT3, Skylake GT3)
|
|
||||||
*/
|
|
||||||
int intel_init_bsd2_ring_buffer(struct intel_engine_cs *engine)
|
|
||||||
{
|
|
||||||
struct drm_i915_private *dev_priv = engine->i915;
|
|
||||||
|
|
||||||
intel_ring_default_vfuncs(dev_priv, engine);
|
|
||||||
|
|
||||||
engine->emit_flush = gen6_bsd_ring_flush;
|
|
||||||
|
|
||||||
return intel_init_ring_buffer(engine);
|
|
||||||
}
|
|
||||||
|
|
||||||
int intel_init_blt_ring_buffer(struct intel_engine_cs *engine)
|
int intel_init_blt_ring_buffer(struct intel_engine_cs *engine)
|
||||||
{
|
{
|
||||||
struct drm_i915_private *dev_priv = engine->i915;
|
struct drm_i915_private *dev_priv = engine->i915;
|
||||||
|
|
|
@ -555,7 +555,6 @@ void intel_engine_cleanup_common(struct intel_engine_cs *engine);
|
||||||
|
|
||||||
int intel_init_render_ring_buffer(struct intel_engine_cs *engine);
|
int intel_init_render_ring_buffer(struct intel_engine_cs *engine);
|
||||||
int intel_init_bsd_ring_buffer(struct intel_engine_cs *engine);
|
int intel_init_bsd_ring_buffer(struct intel_engine_cs *engine);
|
||||||
int intel_init_bsd2_ring_buffer(struct intel_engine_cs *engine);
|
|
||||||
int intel_init_blt_ring_buffer(struct intel_engine_cs *engine);
|
int intel_init_blt_ring_buffer(struct intel_engine_cs *engine);
|
||||||
int intel_init_vebox_ring_buffer(struct intel_engine_cs *engine);
|
int intel_init_vebox_ring_buffer(struct intel_engine_cs *engine);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue