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

Commit 5b483747 authored by Matt Roper's avatar Matt Roper
Browse files

drm/i915: Remove wm_config from dev_priv/intel_atomic_state



We calculate the watermark config into intel_atomic_state and then save
it into dev_priv, but never actually use it from there.  This is
left-over from some early ILK-style watermark programming designs that
got changed over time.

Signed-off-by: default avatarMatt Roper <matthew.d.roper@intel.com>
Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1463061971-19638-18-git-send-email-matthew.d.roper@intel.com
parent 6b6bada7
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -1975,9 +1975,6 @@ struct drm_i915_private {
		 */
		uint16_t skl_latency[8];

		/* Committed wm config */
		struct intel_wm_config config;

		/*
		 * The skl_wm_values structure is a bit too big for stack
		 * allocation, so we keep the staging struct where we store
+0 −31
Original line number Diff line number Diff line
@@ -13313,35 +13313,6 @@ static int calc_watermark_data(struct drm_atomic_state *state)
{
	struct drm_device *dev = state->dev;
	struct drm_i915_private *dev_priv = to_i915(dev);
	struct intel_atomic_state *intel_state = to_intel_atomic_state(state);
	struct drm_crtc *crtc;
	struct drm_crtc_state *cstate;
	struct drm_plane *plane;
	struct drm_plane_state *pstate;

	/*
	 * Calculate watermark configuration details now that derived
	 * plane/crtc state is all properly updated.
	 */
	drm_for_each_crtc(crtc, dev) {
		cstate = drm_atomic_get_existing_crtc_state(state, crtc) ?:
			crtc->state;

		if (cstate->active)
			intel_state->wm_config.num_pipes_active++;
	}
	drm_for_each_legacy_plane(plane, dev) {
		pstate = drm_atomic_get_existing_plane_state(state, plane) ?:
			plane->state;

		if (!to_intel_plane_state(pstate)->visible)
			continue;

		intel_state->wm_config.sprites_enabled = true;
		if (pstate->crtc_w != pstate->src_w >> 16 ||
		    pstate->crtc_h != pstate->src_h >> 16)
			intel_state->wm_config.sprites_scaled = true;
	}

	/* Is there platform-specific watermark information to calculate? */
	if (dev_priv->display.compute_global_watermarks)
@@ -13598,7 +13569,6 @@ static int intel_atomic_commit(struct drm_device *dev,
	}

	drm_atomic_helper_swap_state(dev, state);
	dev_priv->wm.config = intel_state->wm_config;
	dev_priv->wm.distrust_bios_wm = false;
	dev_priv->wm.skl_results = intel_state->wm_results;
	intel_shared_dpll_commit(state);
@@ -15367,7 +15337,6 @@ static void sanitize_watermarks(struct drm_device *dev)
	}

	/* Write calculated watermark values back */
	to_i915(dev)->wm.config = to_intel_atomic_state(state)->wm_config;
	for_each_crtc_in_state(state, crtc, cstate, i) {
		struct intel_crtc_state *cs = to_intel_crtc_state(cstate);

+0 −1
Original line number Diff line number Diff line
@@ -305,7 +305,6 @@ struct intel_atomic_state {
	unsigned int min_pixclk[I915_MAX_PIPES];

	struct intel_shared_dpll_config shared_dpll[I915_NUM_PLLS];
	struct intel_wm_config wm_config;

	/*
	 * Current watermarks can't be trusted during hardware readout, so