[Intel-gfx] [PATCH 00/12] drm/i915: add missing display power refs

Imre Deak imre.deak at intel.com
Tue Feb 16 17:35:57 UTC 2016


On ti, 2016-02-16 at 16:04 +0200, Mika Kuoppala wrote:
> Imre Deak <imre.deak at intel.com> writes:
> 
> > This patchset adds missing display power domain references during
> > modeset HW readout, which I noticed via wakeref warnings the
> > corresponding HW accesses triggered. The crt and ddi patches have a
> > concrete bugzilla reference they fix, I don't know of reports that
> > would
> > be fixed by the rest of the patches in the set. On the way I also
> > noticed other places which are potentially racy (debugfs CRC, VGA
> >  disabling, pipe_assert) so I fixed those up too.
> > 
> > I left the IRQ setup and error capture code as-is: the former
> > happens
> > during driver loading and resume, so the power is guaranteed to
> > stay on
> > for the whole sequence. For error capture, we decided early on that
> > we
> > won't add any locking around these accesses to minimize the chance
> > for
> > locking inversions. Also for this we would need to grab a mutex
> > which
> > isn't possible on the error capture path.
> > 
> > Mika came up with a very similar fix, since he suspects that it
> > could
> > also be related to recent DMC problems. We agreed that I send mine
> > since
> > it uses the more optimal rpm_get_if_in_use() helper (and looks more
> > polished).
> 
> Yes it seems to help a quite alot, although some hardening
> of dcstate writes is still needed on top of this patchset.
> 
> I didn't find fix for skl_ddb_get_hw_state() on the series
> and it looks like it needs the ref also.

Thanks, I missed that. Will send a patch converting that one too.

--Imre

> 
> Thanks,
> -Mika
> 
> > 
> > Imre Deak (12):
> >   drm/i915: add helper to get a display power ref if it was already
> >     enabled
> >   drm/i915: ensure the HW is powered during display pipe HW readout
> >   drm/i915/ibx: ensure the HW is powered during PLL HW readout
> >   drm/i915: ensure the HW is powered when disabling VGA
> >   drm/i915: ensure the HW is powered during HW access in
> > assert_pipe
> >   drm/i915/crt: ensure the HW is powered during HW state readout
> >   drm/i915/ddi: ensure the HW is powered during HW state readout
> >   drm/i915: ensure the HW is powered when accessing the CRC HW
> > block
> >   drm/i915/dp: ensure the HW is powered during HW state readout
> >   drm/i915/dsi: ensure the HW is powered during HW state readout
> >   drm/i915/hdmi: ensure the HW is powered during HW state readout
> >   drm/i915/lvds: ensure the HW is powered during HW state readout
> > 
> >  drivers/gpu/drm/i915/i915_debugfs.c     |  28 ++++++--
> >  drivers/gpu/drm/i915/intel_crt.c        |  13 +++-
> >  drivers/gpu/drm/i915/intel_ddi.c        | 116
> > ++++++++++++++++++++++----------
> >  drivers/gpu/drm/i915/intel_display.c    |  86 ++++++++++++++++--
> > -----
> >  drivers/gpu/drm/i915/intel_dp.c         |  18 +++--
> >  drivers/gpu/drm/i915/intel_drv.h        |   3 +
> >  drivers/gpu/drm/i915/intel_dsi.c        |  13 +++-
> >  drivers/gpu/drm/i915/intel_hdmi.c       |  14 +++-
> >  drivers/gpu/drm/i915/intel_lvds.c       |  14 +++-
> >  drivers/gpu/drm/i915/intel_runtime_pm.c | 111
> > +++++++++++++++++++++++++-----
> >  10 files changed, 315 insertions(+), 101 deletions(-)
> > 


More information about the Intel-gfx mailing list