Commit 7e4460c3 authored by Imre Deak's avatar Imre Deak
Browse files

drm/i915/dp: Factor out intel_dp_get_active_pipes()



Factor out a helper used by a follow up patch to reset an active DP
link.

No functional changes.

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230510103131.1618266-12-imre.deak@intel.com
parent f45156ff
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -4232,7 +4232,7 @@ static bool intel_dp_has_connector(struct intel_dp *intel_dp,
	return false;
}

static int intel_dp_prep_link_retrain(struct intel_dp *intel_dp,
static int intel_dp_get_active_pipes(struct intel_dp *intel_dp,
				     struct drm_modeset_acquire_ctx *ctx,
				     u8 *pipe_mask)
{
@@ -4243,9 +4243,6 @@ static int intel_dp_prep_link_retrain(struct intel_dp *intel_dp,

	*pipe_mask = 0;

	if (!intel_dp_needs_link_retrain(intel_dp))
		return 0;

	drm_connector_list_iter_begin(&i915->drm, &conn_iter);
	for_each_intel_connector_iter(connector, &conn_iter) {
		struct drm_connector_state *conn_state =
@@ -4279,9 +4276,6 @@ static int intel_dp_prep_link_retrain(struct intel_dp *intel_dp,
	}
	drm_connector_list_iter_end(&conn_iter);

	if (!intel_dp_needs_link_retrain(intel_dp))
		*pipe_mask = 0;

	return ret;
}

@@ -4310,13 +4304,19 @@ int intel_dp_retrain_link(struct intel_encoder *encoder,
	if (ret)
		return ret;

	ret = intel_dp_prep_link_retrain(intel_dp, ctx, &pipe_mask);
	if (!intel_dp_needs_link_retrain(intel_dp))
		return 0;

	ret = intel_dp_get_active_pipes(intel_dp, ctx, &pipe_mask);
	if (ret)
		return ret;

	if (pipe_mask == 0)
		return 0;

	if (!intel_dp_needs_link_retrain(intel_dp))
		return 0;

	drm_dbg_kms(&dev_priv->drm, "[ENCODER:%d:%s] retraining link\n",
		    encoder->base.base.id, encoder->base.name);