[Intel-gfx] [PATCH 00/12] drm/i915: add missing display power refs
Mika Kuoppala
mika.kuoppala at linux.intel.com
Tue Feb 16 14:04:16 UTC 2016
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,
-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(-)
>
> --
> 2.5.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
More information about the Intel-gfx
mailing list