Commit f255c624 authored by Ville Syrjälä's avatar Ville Syrjälä

drm/i915: Move skip_intermediate_wm handling into ilk_compute_intermediate_wm()

No point in cluttering the common codepaths with the
skip_intermediate_wm handling. Just move it into
ilk_compute_intermediate_wm() as those are the only
platforms using this.
Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20181108151013.24064-1-ville.syrjala@linux.intel.com
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> #irc
parent e7a278a3
...@@ -10860,7 +10860,6 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc, ...@@ -10860,7 +10860,6 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc,
struct intel_crtc *intel_crtc = to_intel_crtc(crtc); struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
struct intel_crtc_state *pipe_config = struct intel_crtc_state *pipe_config =
to_intel_crtc_state(crtc_state); to_intel_crtc_state(crtc_state);
struct drm_atomic_state *state = crtc_state->state;
int ret; int ret;
bool mode_changed = needs_modeset(crtc_state); bool mode_changed = needs_modeset(crtc_state);
...@@ -10897,8 +10896,7 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc, ...@@ -10897,8 +10896,7 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc,
} }
} }
if (dev_priv->display.compute_intermediate_wm && if (dev_priv->display.compute_intermediate_wm) {
!to_intel_atomic_state(state)->skip_intermediate_wm) {
if (WARN_ON(!dev_priv->display.compute_pipe_wm)) if (WARN_ON(!dev_priv->display.compute_pipe_wm))
return 0; return 0;
...@@ -10914,9 +10912,6 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc, ...@@ -10914,9 +10912,6 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc,
DRM_DEBUG_KMS("No valid intermediate pipe watermarks are possible\n"); DRM_DEBUG_KMS("No valid intermediate pipe watermarks are possible\n");
return ret; return ret;
} }
} else if (dev_priv->display.compute_intermediate_wm) {
if (HAS_PCH_SPLIT(dev_priv) && INTEL_GEN(dev_priv) < 9)
pipe_config->wm.ilk.intermediate = pipe_config->wm.ilk.optimal;
} }
if (INTEL_GEN(dev_priv) >= 9) { if (INTEL_GEN(dev_priv) >= 9) {
......
...@@ -3159,7 +3159,8 @@ static int ilk_compute_intermediate_wm(struct drm_device *dev, ...@@ -3159,7 +3159,8 @@ static int ilk_compute_intermediate_wm(struct drm_device *dev,
* and after the vblank. * and after the vblank.
*/ */
*a = newstate->wm.ilk.optimal; *a = newstate->wm.ilk.optimal;
if (!newstate->base.active || drm_atomic_crtc_needs_modeset(&newstate->base)) if (!newstate->base.active || drm_atomic_crtc_needs_modeset(&newstate->base) ||
intel_state->skip_intermediate_wm)
return 0; return 0;
a->pipe_enabled |= b->pipe_enabled; a->pipe_enabled |= b->pipe_enabled;
......
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