> Subject: [PATCH v3 07/10] drm/i915/alpm: Program lttpr count for DP 2.1
> alpm

*LTTPR
*ALPM

> 
> Issue a aux write transaction to dpcd 0xf000a with total number of lttpr

*DPCD 
Write the name of the register rather than the address

> before link traning.

* training

> 
> Cc: Jouni Högander <[email protected]>
> Signed-off-by: Animesh Manna <[email protected]>
> ---
>  .../gpu/drm/i915/display/intel_dp_link_training.c    | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> b/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> index aad5fe14962f..cf25fd51f452 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp_link_training.c
> @@ -1624,6 +1624,16 @@ intel_dp_128b132b_link_train(struct intel_dp
> *intel_dp,
>       return passed;
>  }
> 
> +static void intel_dp_update_lttpr_count(struct intel_dp *intel_dp,
> +                                     int lttpr_count)
> +{
> +     if (!intel_dp_is_edp(intel_dp) ||
> +         intel_dp->lttpr_common_caps[0] <= 0x20)

Why what is 0x20 avoid magic numbers without proper explanation

Regards,
Suraj Kandpal

> +             return;
> +
> +     drm_dp_dpcd_writeb(&intel_dp->aux, DP_TOTAL_LTTPR_CNT,
> lttpr_count); }
> +
>  /**
>   * intel_dp_start_link_train - start link training
>   * @state: Atomic state
> @@ -1660,6 +1670,8 @@ void intel_dp_start_link_train(struct
> intel_atomic_state *state,
> 
>       intel_dp_prepare_link_train(intel_dp, crtc_state);
> 
> +     intel_dp_update_lttpr_count(intel_dp, lttpr_count);
> +
>       if (intel_dp_is_uhbr(crtc_state))
>               passed = intel_dp_128b132b_link_train(intel_dp, crtc_state,
> lttpr_count);
>       else
> --
> 2.29.0

Reply via email to