Commit 36b53a29 authored by Ville Syrjälä's avatar Ville Syrjälä

drm/i915: Make dirty_pipes refer to pipes

Despite the its name dirty_pipes refers to crtc indexes. Let's
change its behaviout to match the name.
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191011200949.7839-4-ville.syrjala@linux.intel.comReviewed-by: default avatarStanislav Lisovskiy <stanislav.lisovskiy@intel.com>
parent 49e0ed38
...@@ -13934,7 +13934,6 @@ static void skl_commit_modeset_enables(struct intel_atomic_state *state) ...@@ -13934,7 +13934,6 @@ static void skl_commit_modeset_enables(struct intel_atomic_state *state)
struct intel_crtc_state *old_crtc_state, *new_crtc_state; struct intel_crtc_state *old_crtc_state, *new_crtc_state;
unsigned int updated = 0; unsigned int updated = 0;
bool progress; bool progress;
enum pipe pipe;
int i; int i;
u8 hw_enabled_slices = dev_priv->wm.skl_hw.ddb.enabled_slices; u8 hw_enabled_slices = dev_priv->wm.skl_hw.ddb.enabled_slices;
u8 required_slices = state->wm_results.ddb.enabled_slices; u8 required_slices = state->wm_results.ddb.enabled_slices;
...@@ -13959,12 +13958,10 @@ static void skl_commit_modeset_enables(struct intel_atomic_state *state) ...@@ -13959,12 +13958,10 @@ static void skl_commit_modeset_enables(struct intel_atomic_state *state)
progress = false; progress = false;
for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) { for_each_oldnew_intel_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
enum pipe pipe = crtc->pipe;
bool vbl_wait = false; bool vbl_wait = false;
unsigned int cmask = drm_crtc_mask(&crtc->base);
pipe = crtc->pipe;
if (updated & cmask || !new_crtc_state->base.active) if (updated & BIT(crtc->pipe) || !new_crtc_state->base.active)
continue; continue;
if (skl_ddb_allocation_overlaps(&new_crtc_state->wm.skl.ddb, if (skl_ddb_allocation_overlaps(&new_crtc_state->wm.skl.ddb,
...@@ -13972,7 +13969,7 @@ static void skl_commit_modeset_enables(struct intel_atomic_state *state) ...@@ -13972,7 +13969,7 @@ static void skl_commit_modeset_enables(struct intel_atomic_state *state)
INTEL_NUM_PIPES(dev_priv), i)) INTEL_NUM_PIPES(dev_priv), i))
continue; continue;
updated |= cmask; updated |= BIT(pipe);
entries[i] = new_crtc_state->wm.skl.ddb; entries[i] = new_crtc_state->wm.skl.ddb;
/* /*
......
...@@ -5575,7 +5575,7 @@ skl_compute_wm(struct intel_atomic_state *state) ...@@ -5575,7 +5575,7 @@ skl_compute_wm(struct intel_atomic_state *state)
if (!skl_pipe_wm_equals(crtc, if (!skl_pipe_wm_equals(crtc,
&old_crtc_state->wm.skl.optimal, &old_crtc_state->wm.skl.optimal,
&new_crtc_state->wm.skl.optimal)) &new_crtc_state->wm.skl.optimal))
results->dirty_pipes |= drm_crtc_mask(&crtc->base); results->dirty_pipes |= BIT(crtc->pipe);
} }
ret = skl_compute_ddb(state); ret = skl_compute_ddb(state);
...@@ -5595,7 +5595,7 @@ static void skl_atomic_update_crtc_wm(struct intel_atomic_state *state, ...@@ -5595,7 +5595,7 @@ static void skl_atomic_update_crtc_wm(struct intel_atomic_state *state,
struct skl_pipe_wm *pipe_wm = &crtc_state->wm.skl.optimal; struct skl_pipe_wm *pipe_wm = &crtc_state->wm.skl.optimal;
enum pipe pipe = crtc->pipe; enum pipe pipe = crtc->pipe;
if (!(state->wm_results.dirty_pipes & drm_crtc_mask(&crtc->base))) if ((state->wm_results.dirty_pipes & BIT(crtc->pipe)) == 0)
return; return;
I915_WRITE(PIPE_WM_LINETIME(pipe), pipe_wm->linetime); I915_WRITE(PIPE_WM_LINETIME(pipe), pipe_wm->linetime);
...@@ -5604,12 +5604,11 @@ static void skl_atomic_update_crtc_wm(struct intel_atomic_state *state, ...@@ -5604,12 +5604,11 @@ static void skl_atomic_update_crtc_wm(struct intel_atomic_state *state,
static void skl_initial_wm(struct intel_atomic_state *state, static void skl_initial_wm(struct intel_atomic_state *state,
struct intel_crtc_state *crtc_state) struct intel_crtc_state *crtc_state)
{ {
struct intel_crtc *intel_crtc = to_intel_crtc(crtc_state->base.crtc); struct intel_crtc *crtc = to_intel_crtc(crtc_state->base.crtc);
struct drm_device *dev = intel_crtc->base.dev; struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
struct drm_i915_private *dev_priv = to_i915(dev);
struct skl_ddb_values *results = &state->wm_results; struct skl_ddb_values *results = &state->wm_results;
if ((results->dirty_pipes & drm_crtc_mask(&intel_crtc->base)) == 0) if ((results->dirty_pipes & BIT(crtc->pipe)) == 0)
return; return;
mutex_lock(&dev_priv->wm.wm_mutex); mutex_lock(&dev_priv->wm.wm_mutex);
...@@ -5758,7 +5757,7 @@ void skl_wm_get_hw_state(struct drm_i915_private *dev_priv) ...@@ -5758,7 +5757,7 @@ void skl_wm_get_hw_state(struct drm_i915_private *dev_priv)
skl_pipe_wm_get_hw_state(crtc, &crtc_state->wm.skl.optimal); skl_pipe_wm_get_hw_state(crtc, &crtc_state->wm.skl.optimal);
if (crtc->active) if (crtc->active)
hw->dirty_pipes |= drm_crtc_mask(&crtc->base); hw->dirty_pipes |= BIT(crtc->pipe);
} }
if (dev_priv->active_pipes) { if (dev_priv->active_pipes) {
......
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