Commit 24d6652c authored by Maarten Lankhorst's avatar Maarten Lankhorst Committed by Sean Paul

drm/atomic: Set all the changed flags in one place.

Now that handle_conflicting_encoders cannot disable crtc's any more
it makes sense to set all the changed flags in 1 place.
This makes the code slightly less magical.

The (now removed) comment is out of date. The only reason the
active_changed was set late was because handle_conflicting_encoders
could disable connectors. This is no longer the case,
and we can put everything in 1 place.
Signed-off-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: default avatarSean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1491477543-31257-3-git-send-email-maarten.lankhorst@linux.intel.com
parent 44596b8c
...@@ -515,6 +515,12 @@ drm_atomic_helper_check_modeset(struct drm_device *dev, ...@@ -515,6 +515,12 @@ drm_atomic_helper_check_modeset(struct drm_device *dev,
new_crtc_state->mode_changed = true; new_crtc_state->mode_changed = true;
new_crtc_state->connectors_changed = true; new_crtc_state->connectors_changed = true;
} }
if (old_crtc_state->active != new_crtc_state->active) {
DRM_DEBUG_ATOMIC("[CRTC:%d:%s] active changed\n",
crtc->base.id, crtc->name);
new_crtc_state->active_changed = true;
}
} }
ret = handle_conflicting_encoders(state, false); ret = handle_conflicting_encoders(state, false);
...@@ -551,17 +557,6 @@ drm_atomic_helper_check_modeset(struct drm_device *dev, ...@@ -551,17 +557,6 @@ drm_atomic_helper_check_modeset(struct drm_device *dev,
bool has_connectors = bool has_connectors =
!!new_crtc_state->connector_mask; !!new_crtc_state->connector_mask;
/*
* We must set ->active_changed after walking connectors for
* otherwise an update that only changes active would result in
* a full modeset because update_connector_routing force that.
*/
if (old_crtc_state->active != new_crtc_state->active) {
DRM_DEBUG_ATOMIC("[CRTC:%d:%s] active changed\n",
crtc->base.id, crtc->name);
new_crtc_state->active_changed = true;
}
if (!drm_atomic_crtc_needs_modeset(new_crtc_state)) if (!drm_atomic_crtc_needs_modeset(new_crtc_state))
continue; continue;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment