Add link_recovery_autoretrain_pending() to make it clearer what the condition is about at its callers: an autoretrain work has been queued.
This also prepares for replacing the sequential link training failure counter with an enum in a follow-up change. v2: Remove unnecessary function documentation. (Jani) Cc: Jani Nikula <[email protected]> Signed-off-by: Imre Deak <[email protected]> --- drivers/gpu/drm/i915/display/intel_dp_link_training.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) 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 cbac9a70e8d5b..f6a8102a300c1 100644 --- a/drivers/gpu/drm/i915/display/intel_dp_link_training.c +++ b/drivers/gpu/drm/i915/display/intel_dp_link_training.c @@ -1264,6 +1264,12 @@ intel_dp_128b132b_intra_hop(struct intel_dp *intel_dp, return sink_status & DP_INTRA_HOP_AUX_REPLY_INDICATION ? 1 : 0; } +static bool +link_recovery_autoretrain_pending(struct intel_dp_link_training *link_training) +{ + return link_training->seq_train_failures == 1; +} + /** * intel_dp_stop_link_train - stop link training * @intel_dp: DP struct @@ -1305,7 +1311,7 @@ void intel_dp_stop_link_train(struct intel_dp *intel_dp, if (!display->hotplug.ignore_long_hpd && link_training->seq_train_failures < MAX_SEQ_TRAIN_FAILURES) { - int delay_ms = link_training->seq_train_failures == 1 ? 0 : 2000; + int delay_ms = link_recovery_autoretrain_pending(link_training) ? 0 : 2000; intel_encoder_link_check_queue_work(encoder, delay_ms); } @@ -2006,7 +2012,7 @@ intel_dp_needs_link_retrain(struct intel_dp *intel_dp) if (link_training->seq_train_failures >= MAX_SEQ_TRAIN_FAILURES) return false; - if (link_training->seq_train_failures == 1) + if (link_recovery_autoretrain_pending(link_training)) return true; /* Retrain if link not ok */ -- 2.49.1
