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

Commit a51435a3 authored by Naresh Kumar Kachhi's avatar Naresh Kumar Kachhi Committed by Daniel Vetter
Browse files

drm/i915: disable rings before HW status page setup



Rings should be idle before issuing sync_flush
(in intel_ring_setup_status_page). This patch moves the ring
disabling before doing the HW status page setup.

Signed-off-by: default avatarNaresh Kumar Kachhi <naresh.kumar.kachhi@intel.com>
Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 5a6c93fe
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -440,16 +440,16 @@ static int init_ring_common(struct intel_ring_buffer *ring)

	gen6_gt_force_wake_get(dev_priv, FORCEWAKE_ALL);

	if (I915_NEED_GFX_HWS(dev))
		intel_ring_setup_status_page(ring);
	else
		ring_setup_phys_status_page(ring);

	/* Stop the ring if it's running. */
	I915_WRITE_CTL(ring, 0);
	I915_WRITE_HEAD(ring, 0);
	ring->write_tail(ring, 0);

	if (I915_NEED_GFX_HWS(dev))
		intel_ring_setup_status_page(ring);
	else
		ring_setup_phys_status_page(ring);

	head = I915_READ_HEAD(ring) & HEAD_ADDR;

	/* G45 ring initialization fails to reset head to zero */