[Intel-gfx] [PATCH 00/24] Convert to atomic, part 3.

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Mon Jun 1 06:27:03 PDT 2015


This patch series requires the following prerequisites:
"[PATCH v4 00/27] Convert to atomic, part 2"
"[PATCH] drm/atomic: Clear crtc_state->active in drm_atomic_helper_set_config."

Now that suspend/restore is atomic it's time to clean up some
remaining issues. First I clean up the suspend code some more now
that it's atomic.

After that I try to make a better separation between checking and
modeset. This meant that intel_modeset_pipe_config should no longer
touch mode_changed, because it will only be called when a modeset
will already happen to prevent excessive rechecking.

I also clean up the scaler stuff slightly, and add a hack to allow
switching a plane to/from hq mode without requiring it to be part
of the state. This allows calling intel_atomic_update_scalers from
the crtc_check function, although I guess in theory there wouldn't
be much harm adding a plane. This part's open for debate, if people
prefer a different approach I'd be fine with it. :-)

After those changes drm_atomic_commit and intel_set_mode become very
similar, but it's still too early to use intel_set_mode as a
replacement.

First planes have to be converted to atomic, which is done by
splitting out the updates of intel_crtc->atomic to a helper.
Most of the changes to intel_crtc->atomic will not be done during a
modeset, because all state will be updated regardless.

After this is split out converting planes to atomic in intel_set_mode
is simply a matter of updating intel_crtc->atomic during modeset and
calling the helpers we split out.

Maarten Lankhorst (24):
  drm/i915: Always reset in intel_crtc_restore_mode
  drm/i915: Use crtc state in intel_modeset_pipe_config
  drm/i915: clean up intel_sanitize_crtc
  drm/i915: Update power domains only on affected crtc's.
  drm/i915: add fastboot checks for has_audio and has_infoframe
  drm/i915: Clean up intel_atomic_setup_scalers slightly.
  drm/i915: Add a simple atomic crtc check function.
  drm/i915: Do not add planes from intel_atomic_setup_scalers.
  drm/i915: Assign a new pll from the crtc check function.
  drm/i915: Do not run most checks when there's no modeset.
  drm/i915: Split skl_update_scaler.
  drm/i915: Split plane updates of crtc->atomic into a helper.
  drm/i915: move detaching scalers to begin_crtc_commit
  drm/i915: Move crtc commit updates to separate functions.
  drm/i915: clean up plane commit functions
  drm/i915: atomic plane updates in a nutshell
  drm/i915: Update less state during modeset.
  drm/i915: get rid of intel_plane_restore in intel_crtc_page_flip
  drm/i915: Make setting color key atomic.
  drm/i915: clean up atomic plane check functions
  drm/i915: remove force argument from disable_plane
  drm/i915: Use full atomic modeset.
  drm/i915: Unify plane updates.
  drm/i915: always disable irqs in intel_pipe_update_start

 drivers/gpu/drm/i915/i915_debugfs.c       |    8 +-
 drivers/gpu/drm/i915/i915_drv.c           |    3 -
 drivers/gpu/drm/i915/intel_atomic.c       |  183 +--
 drivers/gpu/drm/i915/intel_atomic_plane.c |   38 +-
 drivers/gpu/drm/i915/intel_display.c      | 1726 ++++++++++++-----------------
 drivers/gpu/drm/i915/intel_dp.c           |    2 +-
 drivers/gpu/drm/i915/intel_drv.h          |   33 +-
 drivers/gpu/drm/i915/intel_sprite.c       |  189 ++--
 8 files changed, 860 insertions(+), 1322 deletions(-)

-- 
2.1.0



More information about the Intel-gfx mailing list