[Intel-gfx] [PATCH] drm/i915/dp: Fix the channel equalization failure condition during Link Training

Jim Bride jim.bride at linux.intel.com
Fri Aug 18 16:36:58 UTC 2017


On Thu, Aug 17, 2017 at 08:03:04PM -0700, Manasi Navare wrote:
> In the channel EQ retry loop, we break from the loop in case
> of failure to get link status or failure in clock recovery or
> failure to update link training. In these cases channel_eq_status
> is still false even though the retry loop has not reached max retries.
> So we need to consider this as a failure condition.
> 
Reviewed-by: Jim Bride <jim.bride at linux.intel.com>

> Signed-off-by: Manasi Navare <manasi.d.navare at intel.com>
> Cc: Jim Bride <jim.bride at linux.intel.com>
> Cc: Jani Nikula <jani.nikula at linux.intel.com>
> Cc: Ville Syrjala <ville.syrjala at linux.intel.com>
> ---
>  drivers/gpu/drm/i915/intel_dp_link_training.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dp_link_training.c b/drivers/gpu/drm/i915/intel_dp_link_training.c
> index 05907fa..3fef219 100644
> --- a/drivers/gpu/drm/i915/intel_dp_link_training.c
> +++ b/drivers/gpu/drm/i915/intel_dp_link_training.c
> @@ -294,9 +294,9 @@ intel_dp_link_training_channel_equalization(struct intel_dp *intel_dp)
>  	}
>  
>  	/* Try 5 times, else fail and try at lower BW */
> -	if (tries == 5) {
> +	if (tries == 5 || !intel_dp->channel_eq_status) {
>  		intel_dp_dump_link_status(link_status);
> -		DRM_DEBUG_KMS("Channel equalization failed 5 times\n");
> +		DRM_DEBUG_KMS("Channel equalization failed\n");
>  	}
>  
>  	intel_dp_set_idle_link_train(intel_dp);
> -- 
> 2.1.4


More information about the Intel-gfx mailing list