[Intel-gfx] [PATCH 00/13] Atomic watermark updates (v3)

Matt Roper matthew.d.roper at intel.com
Thu Aug 20 18:11:51 PDT 2015


Previous atomic watermark patches were posted here:
  http://lists.freedesktop.org/archives/intel-gfx/2015-July/070465.html

Key changes since the last series:
 * Quite a bit of rebasing; I got pulled away from working on this for a while,
   so parts of the upstream code evolved a bit before I was able to get back
   to working on this.
 * Completely drop the async aspect of writing the final watermarks on
   platforms that need two-step programming.  Although this is the direction we
   want to go eventually, Maarten has indicated that what I was doing in
   previous patch sets was going to lead to conflicts with some of his
   in-progress work and asked that I just write the final watermarks at the
   very end of the atomic transaction, after waiting for vblanks.  We can
   revisit the async final step again after Maarten's work lands and leverage
   the new interfaces he adds.  In the meantime, this simplifies things a
   bit since we don't need to worry about async final watermark writing
   racing with our next transaction and clobbering the intermediate values
   for that next transaction that we've already written.
 * Early SKL-style atomic watermarks (completely untested at the moment!).  Even
   though gen9 doesn't need the two-step programming process, we now
   pre-compute gen9 watermark values during the check phase and write+flush
   them during commit.  However I think there's still more refactoring that
   should be eventually done here.  We trigger watermark updates on a per-crtc
   basis, but the end results are global, not per-crtc.  In an atomic
   transaction this could currently lead to us re-calculating the same values
   multiple times if multiple CRTC's all trigger a WM update.   Note that I
   haven't had a chance to run any of this on real gen9 hardware yet, so all of
   the SKL patches here should be considered RFC at best; they may be
   completely broken.
 * Various review feedback from Daniel, Ville, and Maarten from previous
   iterations.


Matt Roper (12):
  drm/i915: Eliminate usage of plane_wm_parameters from ILK-style WM
    code
  drm/i915: Eliminate usage of pipe_wm_parameters from ILK-style WM
  drm/i915/skl: Simplify wm structures slightly
  drm/i915/skl: Eliminate usage of pipe_wm_parameters from SKL-style WM
  drm/i915/ivb: Move WaCxSRDisabledForSpriteScaling w/a to atomic check
  drm/i915: Drop intel_update_sprite_watermarks
  drm/i915: Move active watermarks into CRTC state (v2)
  drm/i915: Calculate ILK-style watermarks during atomic check (v2)
  drm/i915: Calculate watermark configuration during atomic check
  drm/i915: Add two-stage ILK-style watermark programming (v3)
  drm/i915/skl: Switch to atomic watermark programming
  drm/i915/skl: Clarify pending vs hw watermark values

Ville Syrjälä (1):
  drm/i915: Refactor ilk_update_wm (v3)

 drivers/gpu/drm/i915/i915_debugfs.c  |   4 +-
 drivers/gpu/drm/i915/i915_drv.h      |  68 ++-
 drivers/gpu/drm/i915/intel_atomic.c  |   1 +
 drivers/gpu/drm/i915/intel_display.c | 184 +++++++-
 drivers/gpu/drm/i915/intel_drv.h     |  81 +++-
 drivers/gpu/drm/i915/intel_pm.c      | 860 ++++++++++++++++-------------------
 drivers/gpu/drm/i915/intel_sprite.c  |  15 -
 7 files changed, 659 insertions(+), 554 deletions(-)

-- 
2.1.4



More information about the Intel-gfx mailing list