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

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

drm/i915: warn if ring is active before sync flush



Based on Bspec the command parser must be stopped prior to
issuing sync flush. This should be done by the caller of
intel_ring_setup_status_page. Patch adds a warning if it is
not done.

v2: rebased based on new patch (wait for ring to become idle)

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 e9fea574
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -984,6 +984,10 @@ void intel_ring_setup_status_page(struct intel_ring_buffer *ring)
	/* Flush the TLB for this page */
	if (INTEL_INFO(dev)->gen >= 6) {
		u32 reg = RING_INSTPM(ring->mmio_base);

		/* ring should be idle before issuing a sync flush*/
		WARN_ON((I915_READ_MODE(ring) & MODE_IDLE) == 0);

		I915_WRITE(reg,
			   _MASKED_BIT_ENABLE(INSTPM_TLB_INVALIDATE |
					      INSTPM_SYNC_FLUSH));