Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4ac9659e authored by Tvrtko Ursulin's avatar Tvrtko Ursulin
Browse files

drm/i915: Remove duplicate intel_logical_ring_workarounds_emit

parent bd64818d
Loading
Loading
Loading
Loading
+1 −34
Original line number Original line Diff line number Diff line
@@ -890,39 +890,6 @@ static int execlists_request_alloc(struct drm_i915_gem_request *request)
	return ret;
	return ret;
}
}


static int intel_logical_ring_workarounds_emit(struct drm_i915_gem_request *req)
{
	struct i915_workarounds *w = &req->i915->workarounds;
	u32 *cs;
	int ret, i;

	if (w->count == 0)
		return 0;

	ret = req->engine->emit_flush(req, EMIT_BARRIER);
	if (ret)
		return ret;

	cs = intel_ring_begin(req, w->count * 2 + 2);
	if (IS_ERR(cs))
		return PTR_ERR(cs);

	*cs++ = MI_LOAD_REGISTER_IMM(w->count);
	for (i = 0; i < w->count; i++) {
		*cs++ = i915_mmio_reg_offset(w->reg[i].addr);
		*cs++ = w->reg[i].value;
	}
	*cs++ = MI_NOOP;

	intel_ring_advance(req, cs);

	ret = req->engine->emit_flush(req, EMIT_BARRIER);
	if (ret)
		return ret;

	return 0;
}

#define wa_ctx_emit(batch, index, cmd)					\
#define wa_ctx_emit(batch, index, cmd)					\
	do {								\
	do {								\
		int __index = (index)++;				\
		int __index = (index)++;				\
@@ -1672,7 +1639,7 @@ static int gen8_init_rcs_context(struct drm_i915_gem_request *req)
{
{
	int ret;
	int ret;


	ret = intel_logical_ring_workarounds_emit(req);
	ret = intel_ring_workarounds_emit(req);
	if (ret)
	if (ret)
		return ret;
		return ret;


+1 −1
Original line number Original line Diff line number Diff line
@@ -644,7 +644,7 @@ static void reset_ring_common(struct intel_engine_cs *engine,
	}
	}
}
}


static int intel_ring_workarounds_emit(struct drm_i915_gem_request *req)
int intel_ring_workarounds_emit(struct drm_i915_gem_request *req)
{
{
	struct i915_workarounds *w = &req->i915->workarounds;
	struct i915_workarounds *w = &req->i915->workarounds;
	u32 *cs;
	u32 *cs;
+1 −0
Original line number Original line Diff line number Diff line
@@ -560,6 +560,7 @@ static inline u32 intel_engine_last_submit(struct intel_engine_cs *engine)
}
}


int init_workarounds_ring(struct intel_engine_cs *engine);
int init_workarounds_ring(struct intel_engine_cs *engine);
int intel_ring_workarounds_emit(struct drm_i915_gem_request *req);


void intel_engine_get_instdone(struct intel_engine_cs *engine,
void intel_engine_get_instdone(struct intel_engine_cs *engine,
			       struct intel_instdone *instdone);
			       struct intel_instdone *instdone);