drm/i915: Don't set undefined bits in dirty_pipes
skl_commit_modeset_enables() straight up compares dirty_pipes with a bitmask of already committed pipes. If we set bits in dirty_pipes for non-existent pipes that comparison will never work right. So let's limit ourselves to bits that exist. And we'll do the same for the active_pipes_changed bitmask. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20191011200949.7839-5-ville.syrjala@linux.intel.com Reviewed-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
This commit is contained in:
@@ -5360,7 +5360,7 @@ skl_ddb_add_affected_pipes(struct intel_atomic_state *state)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
state->active_pipe_changes = ~0;
|
||||
state->active_pipe_changes = INTEL_INFO(dev_priv)->pipe_mask;
|
||||
|
||||
/*
|
||||
* We usually only initialize state->active_pipes if we
|
||||
@@ -5386,7 +5386,7 @@ skl_ddb_add_affected_pipes(struct intel_atomic_state *state)
|
||||
* to grab the lock on *all* CRTC's.
|
||||
*/
|
||||
if (state->active_pipe_changes || state->modeset) {
|
||||
state->wm_results.dirty_pipes = ~0;
|
||||
state->wm_results.dirty_pipes = INTEL_INFO(dev_priv)->pipe_mask;
|
||||
|
||||
ret = intel_add_all_pipes(state);
|
||||
if (ret)
|
||||
|
Reference in New Issue
Block a user