[Bug 92084] [BDW][drm:gen8_irq_handler [i915]] *ERROR* The master control interrupt lied (SDE)!
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Mon Oct 5 05:04:57 PDT 2015
https://bugs.freedesktop.org/show_bug.cgi?id=92084
--- Comment #16 from Ville Syrjala <ville.syrjala at linux.intel.com> ---
(In reply to Jani Nikula from comment #15)
> (In reply to Ville Syrjala from comment #13)
> > (In reply to Jani Nikula from comment #12)
> > > However this helps. We're missing something.
> > >
> > > diff --git a/drivers/gpu/drm/i915/i915_irq.c
> > > b/drivers/gpu/drm/i915/i915_irq.c
> > > index 76bd40e13391..0d524034abd7 100644
> > > --- a/drivers/gpu/drm/i915/i915_irq.c
> > > +++ b/drivers/gpu/drm/i915/i915_irq.c
> > > @@ -1827,6 +1827,9 @@ static void ibx_hpd_irq_handler(struct drm_device
> > > *dev, u32 hotplug_trigger,
> > > dig_hotplug_reg = I915_READ(PCH_PORT_HOTPLUG);
> > > I915_WRITE(PCH_PORT_HOTPLUG, dig_hotplug_reg);
> >
> > Is the read alone enough, or do you need the write too?
>
> Moving the write below the !hotplug_trigger check brings the problem back,
> i.e. the write is also needed.
Are the status bits actually showing long/short pulses when this happens?
Maybe we can just do something like this:
dig_hotplug_reg = I915_READ(PCH_PORT_HOTPLUG);
if (!hotplug_trigger)
dig_hotplug_reg &= ~(*_HOTPLUG_STATUS_MASK);
I915_WRITE(PCH_PORT_HOTPLUG, dig_hotplug_reg
if (!hotplug_trigger)
return;
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20151005/dd142e82/attachment.html>
More information about the intel-gfx-bugs
mailing list