[Intel-gfx] [PATCH 0/4] Intermediate state for modesets

Matt Roper matthew.d.roper at intel.com
Wed Sep 9 18:57:51 PDT 2015


During review of the atomic watermark work, there was some discussion about how
to best handle modeset sequences where the CRTC's active state goes
enable->disable->enable.  One of the suggestions from Ville was to break the
modeset sequence into two atomic states by adding a new intermediate state that
represents the CRTC's being modeset at the point they (and their planes) have
been disabled.  This would hopefully allow us to eliminate some of the special
casing that exists in current modeset sequence (especially where we can't
always trust the state->active values).

I know there's been a bit of disagreement on IRC and mailing lists as to
whether this is the best direction to go or not, so I figured it might be
easier to discuss if I posted an actual implementation to look at.  I'll post
another iteration of the atomic watermark series tomorrow based on top of this
code to look at as well, in case that helps us make a decision.


Matt Roper (4):
  drm/i915: Roll intel_crtc->atomic into intel_crtc_state
  drm/atomic/helper: Allow duplication of in-flight states
  drm/i915: Calculate an intermediate atomic state for modesets (v2)
  drm/i915: Update modeset programming to use intermediate state (v2)

 drivers/gpu/drm/drm_atomic_helper.c       |  12 +-
 drivers/gpu/drm/i915/intel_atomic.c       | 158 +++++++++++++++++++++----
 drivers/gpu/drm/i915/intel_atomic_plane.c |  36 +++---
 drivers/gpu/drm/i915/intel_display.c      | 190 +++++++++++++++++++-----------
 drivers/gpu/drm/i915/intel_drv.h          |  56 +++++----
 drivers/gpu/drm/omapdrm/omap_plane.c      |   2 +-
 drivers/gpu/drm/rcar-du/rcar_du_plane.c   |   2 +-
 drivers/gpu/drm/tegra/dc.c                |   4 +-
 include/drm/drm_atomic_helper.h           |   4 +-
 9 files changed, 325 insertions(+), 139 deletions(-)

-- 
2.1.4



More information about the Intel-gfx mailing list