[Intel-gfx] [PATCH 2/2] drm/i915: Always set fifo count to zero in gen6_reset
Daniel Vetter
daniel at ffwll.ch
Wed Mar 5 20:33:59 CET 2014
On Wed, Mar 05, 2014 at 10:12:55AM -0800, Ben Widawsky wrote:
> On Wed, Mar 05, 2014 at 06:08:19PM +0200, Mika Kuoppala wrote:
> > There should not be a case where fifo count is other
> > than zero after a successful reset. Always set
> > count to zero, but be paranoid enough to warn.
> >
> > v2: rebased
> >
> > Suggested-by: Ben Widawsky <ben at bwidawsk.net>
> > Signed-off-by: Mika Kuoppala <mika.kuoppala at intel.com>
> > ---
> > drivers/gpu/drm/i915/intel_uncore.c | 7 ++++---
> > 1 file changed, 4 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c
> > index 00320fd..79eaba8 100644
> > --- a/drivers/gpu/drm/i915/intel_uncore.c
> > +++ b/drivers/gpu/drm/i915/intel_uncore.c
> > @@ -988,9 +988,10 @@ static int gen6_do_reset(struct drm_device *dev)
> > dev_priv->uncore.funcs.force_wake_get(dev_priv, fw_engine);
> >
> > if (IS_GEN6(dev) || IS_GEN7(dev))
> > - dev_priv->uncore.fifo_count =
> > - __raw_i915_read32(dev_priv, GTFIFOCTL) &
> > - GT_FIFO_FREE_ENTRIES_MASK;
> > + WARN_ON((__raw_i915_read32(dev_priv, GTFIFOCTL) &
> > + GT_FIFO_FREE_ENTRIES_MASK) != 0);
> > +
> > + dev_priv->uncore.fifo_count = 0;
> >
> > spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
> > return ret;
>
> Can you please add the following to the commit message:
> "The GT FIFO is bypassed when not in RC6 from both IA and SA. As we've
> just reset the GPU and not yet enabled RC6, there is no way the FIFO can
> be anything but 0. If it is non-zero, it's a HW bug, and we can try to
> carry on by faking it. It should be noted that RC6 is highly unlikely to
> work properly if this WARN fires, however the system should continue on
> just fine."
Done.
>
> With that:
> Reviewed-by: Ben Widawsky <ben at bwidawsk.net>
Queued for -next, thanks for the patch.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the Intel-gfx
mailing list