Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+1 −6
Original line number Diff line number Diff line
@@ -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_state *pipe_config =
		to_intel_crtc_state(crtc_state);
	struct drm_atomic_state *state = crtc_state->state;
	int ret;
	bool mode_changed = needs_modeset(crtc_state);

@@ -10897,8 +10896,7 @@ static int intel_crtc_atomic_check(struct drm_crtc *crtc,
		}
	}

	if (dev_priv->display.compute_intermediate_wm &&
	    !to_intel_atomic_state(state)->skip_intermediate_wm) {
	if (dev_priv->display.compute_intermediate_wm) {
		if (WARN_ON(!dev_priv->display.compute_pipe_wm))
			return 0;

@@ -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");
			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) {
+2 −1
Original line number Diff line number Diff line
@@ -3159,7 +3159,8 @@ static int ilk_compute_intermediate_wm(struct drm_device *dev,
	 * and after the vblank.
	 */
	*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;

	a->pipe_enabled |= b->pipe_enabled;