Short pulse can be generated for automated tests requesting link training again, such scenarios we have to perform the request irrespective of the current status of link. This patch adds support for this request in DP encoder. Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@xxxxxxxxx> Signed-off-by: Shubhangi Shrivastava <shubhangi.shrivastava@xxxxxxxxx> --- drivers/gpu/drm/i915/intel_dp.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 4c564ba..d5ed84f 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -3846,6 +3846,7 @@ intel_dp_check_link_status(struct intel_dp *intel_dp) struct intel_encoder *intel_encoder = &dp_to_dig_port(intel_dp)->base; struct drm_device *dev = intel_dp_to_dev(intel_dp); u8 link_status[DP_LINK_STATUS_SIZE]; + bool check_link = false; WARN_ON(!drm_modeset_is_locked(&dev->mode_config.connection_mutex)); @@ -3854,17 +3855,20 @@ intel_dp_check_link_status(struct intel_dp *intel_dp) return; } - if (!intel_encoder->base.crtc) - return; - - if (!to_intel_crtc(intel_encoder->base.crtc)->active) - return; - /* if link training is requested we should perform it always */ - if ((intel_dp->compliance_test_type == DP_TEST_LINK_TRAINING) || - (!drm_dp_channel_eq_ok(link_status, intel_dp->lane_count))) { - DRM_DEBUG_KMS("%s: channel EQ not ok, retraining\n", + if (intel_dp->compliance_test_type == DP_TEST_LINK_TRAINING) { + DRM_DEBUG_KMS("%s: Link training requested, retraining\n", intel_encoder->base.name); + check_link = true; + } else if (((to_intel_crtc(intel_encoder->base.crtc)->active) && + (intel_encoder->base.crtc)) && + (!drm_dp_channel_eq_ok(link_status, intel_dp->lane_count))) { + DRM_DEBUG_KMS("%s: channel EQ not ok, retraining\n", + intel_encoder->base.name); + check_link = true; + } + + if (check_link) { intel_dp_start_link_train(intel_dp); intel_dp_stop_link_train(intel_dp); } -- 2.6.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx