On Thu, May 04, 2023 at 02:10:46AM +0300, Imre Deak wrote:
> Factor out a helper used by a follow up patch to reset an active DP
> link.
> 
> No functional changes.
> 
> Signed-off-by: Imre Deak <imre.d...@intel.com>

Reviewed-by: Ville Syrjälä <ville.syrj...@linux.intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_dp.c | 20 ++++++++++----------
>  1 file changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 1942a05719776..7a349cb9fc2e6 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -4126,9 +4126,9 @@ 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,
> -                                   struct drm_modeset_acquire_ctx *ctx,
> -                                   u8 *pipe_mask)
> +static int intel_dp_get_active_pipes(struct intel_dp *intel_dp,
> +                                  struct drm_modeset_acquire_ctx *ctx,
> +                                  u8 *pipe_mask)
>  {
>       struct drm_i915_private *i915 = dp_to_i915(intel_dp);
>       struct drm_connector_list_iter conn_iter;
> @@ -4137,9 +4137,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 =
> @@ -4173,9 +4170,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;
>  }
>  
> @@ -4204,13 +4198,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);
>  
> -- 
> 2.37.2

-- 
Ville Syrjälä
Intel

Reply via email to