[Intel-gfx] [PATCH 3/4] drm/dp: Clarify clock recovery and channel equalization failures
Chris Wilson
chris at chris-wilson.co.uk
Thu Aug 4 03:12:51 UTC 2016
On Wed, Aug 03, 2016 at 08:07:40PM -0700, Dhinakaran Pandiyan wrote:
> The causes of clock recovery and channel equalization failures are not
> explicitly printed in debug messages. Help debugging link training
> failures by printing why it failed.
>
> Doing this in the driver would mean re-implementing some of the drm static
> functions that decode link status. Let's avoid that with these debug
> messages in drm.
>
> Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan at intel.com>
> ---
> drivers/gpu/drm/drm_dp_helper.c | 12 +++++++++---
> 1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_dp_helper.c b/drivers/gpu/drm/drm_dp_helper.c
> index 091053e..d763b57 100644
> --- a/drivers/gpu/drm/drm_dp_helper.c
> +++ b/drivers/gpu/drm/drm_dp_helper.c
> @@ -64,12 +64,16 @@ bool drm_dp_channel_eq_ok(const u8 link_status[DP_LINK_STATUS_SIZE],
>
> lane_align = dp_link_status(link_status,
> DP_LANE_ALIGN_STATUS_UPDATED);
> - if ((lane_align & DP_INTERLANE_ALIGN_DONE) == 0)
> + if ((lane_align & DP_INTERLANE_ALIGN_DONE) == 0) {
> + DRM_DEBUG_KMS("Inter-lane alignment not done\n");
> return false;
> + }
> for (lane = 0; lane < lane_count; lane++) {
> lane_status = dp_get_lane_status(link_status, lane);
> - if ((lane_status & DP_CHANNEL_EQ_BITS) != DP_CHANNEL_EQ_BITS)
> + if ((lane_status & DP_CHANNEL_EQ_BITS) != DP_CHANNEL_EQ_BITS) {
> + DRM_DEBUG_KMS("Channel equalization not done for lane %d\n", lane);
> return false;
> + }
> }
> return true;
> }
> @@ -83,8 +87,10 @@ bool drm_dp_clock_recovery_ok(const u8 link_status[DP_LINK_STATUS_SIZE],
>
> for (lane = 0; lane < lane_count; lane++) {
> lane_status = dp_get_lane_status(link_status, lane);
> - if ((lane_status & DP_LANE_CR_DONE) == 0)
> + if ((lane_status & DP_LANE_CR_DONE) == 0) {
> + DRM_DEBUG_KMS("Clock recovery not done for lane %d\n", lane);
Please petition, with patch, for DRM_DEBUG_DP.
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the dri-devel
mailing list