[PATCH 0/5] drm/i915: Grab the vblank evasion lock around the entire evasion.

Maarten Lankhorst
2018-02-09T09:54:57Z

Some cleanups to move the uncore.lock around vblank evasion, so run
to completion without racing on uncore.lock. Hopefully this will reduce
the chance of underruns, and perhaps allows us to decrease
VBLANK_EVASION_TIME_US as well as a followup patch.

Tested on KBL and BSW.

Maarten Lankhorst (5):
drm/i915: Keep vblank irq enabled during vblank evasion.
drm/i915: Grab uncore.lock around enabling vblank evasion
drm/i915: Call i915_pipe_update_start with uncore.lock held.
drm/i915: Move all locking for plane updates to caller
drm/i915: Use DOUBLE_BUFFER_CTL on top of vblank evasion for GEN9+.

drivers/gpu/drm/i915/i915_irq.c | 68 ++++++++++++++++++++++++------
drivers/gpu/drm/i915/i915_reg.h | 3 ++
drivers/gpu/drm/i915/i915_trace.h | 20 ++++-----
drivers/gpu/drm/i915/intel_display.c | 74 +++++++++++++-------------------
drivers/gpu/drm/i915/intel_drv.h | 2 +
drivers/gpu/drm/i915/intel_pm.c | 16 +++----
drivers/gpu/drm/i915/intel_sprite.c | 81 ++++++++++--------------------------
7 files changed, 128 insertions(+), 136 deletions(-)

--
2.16.1