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

drm/i915: swap() the entire cdclk state



To make life less confusing let's swap() the entire cdclk state
rather than swapping some parts, copying other parts, and leaving
the rest just as is.

Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200120174728.21095-11-ville.syrjala@linux.intel.com


Reviewed-by: default avatarImre Deak <imre.deak@intel.com>
parent 1965de63
Loading
Loading
Loading
Loading
+3 −15
Original line number Diff line number Diff line
@@ -1851,19 +1851,7 @@ void intel_cdclk_swap_state(struct intel_atomic_state *state)
{
	struct drm_i915_private *dev_priv = to_i915(state->base.dev);

	/* FIXME maybe swap() these too */
	memcpy(dev_priv->cdclk_state.min_cdclk,
	       state->cdclk_state.min_cdclk,
	       sizeof(state->cdclk_state.min_cdclk));
	memcpy(dev_priv->cdclk_state.min_voltage_level,
	       state->cdclk_state.min_voltage_level,
	       sizeof(state->cdclk_state.min_voltage_level));

	dev_priv->cdclk_state.force_min_cdclk =
		state->cdclk_state.force_min_cdclk;

	swap(state->cdclk_state.logical, dev_priv->cdclk_state.logical);
	swap(state->cdclk_state.actual, dev_priv->cdclk_state.actual);
	swap(state->cdclk_state, dev_priv->cdclk_state);
}

void intel_dump_cdclk_config(const struct intel_cdclk_config *cdclk_config,
@@ -1919,7 +1907,7 @@ intel_set_cdclk_pre_plane_update(struct intel_atomic_state *state)
	/* called after intel_cdclk_swap_state()! */
	const struct intel_cdclk_state *old_cdclk_state = &state->cdclk_state;
	const struct intel_cdclk_state *new_cdclk_state = &dev_priv->cdclk_state;
	enum pipe pipe = old_cdclk_state->pipe; /* not swapped */
	enum pipe pipe = new_cdclk_state->pipe;

	if (pipe == INVALID_PIPE ||
	    old_cdclk_state->actual.cdclk <= new_cdclk_state->actual.cdclk)
@@ -1940,7 +1928,7 @@ intel_set_cdclk_post_plane_update(struct intel_atomic_state *state)
	/* called after intel_cdclk_swap_state()! */
	const struct intel_cdclk_state *old_cdclk_state = &state->cdclk_state;
	const struct intel_cdclk_state *new_cdclk_state = &dev_priv->cdclk_state;
	enum pipe pipe = old_cdclk_state->pipe; /* not swapped */
	enum pipe pipe = new_cdclk_state->pipe;

	if (pipe != INVALID_PIPE &&
	    old_cdclk_state->actual.cdclk > new_cdclk_state->actual.cdclk)