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 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx