Re: [PATCH] drm/i915/dp: Remove aux xfer timeout debug message

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2020-12-30 at 16:02 -0800, Matt Roper wrote:
> On Wed, Dec 30, 2020 at 10:37:42AM +0000, Chris Wilson wrote:
> > The timeouts are frequent and expected. We will complain if we
> > retry so
> > often as to lose patience and give up, so the cacophony from
> > individual
> > complaints is redundant.
> > 
> > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
> 
> Reviewed-by: Matt Roper <matthew.d.roper@xxxxxxxxx>
> 
> > ---
> >  drivers/gpu/drm/i915/display/intel_dp.c | 2 --
> >  1 file changed, 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> > b/drivers/gpu/drm/i915/display/intel_dp.c
> > index 8ae769b18879..704e4cebf7f3 100644
> > --- a/drivers/gpu/drm/i915/display/intel_dp.c
> > +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> > @@ -1613,8 +1613,6 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
> >  	/* Timeouts occur when the device isn't connected, so they're
> >  	 * "normal" -- don't fill the kernel log with these */
> >  	if (status & DP_AUX_CH_CTL_TIME_OUT_ERROR) {
> > -		drm_dbg_kms(&i915->drm, "%s: timeout (status
> > 0x%08x)\n",
> > -			    intel_dp->aux.name, status);

AUX timeout logs are very important for TGL TCSS Display debugging. We
actually can get AUX timeout when the display is connected for the
following reasons:
* If AUX orientation is not configured correctly in BIOS
* If USB3 dock is downgraded to USB2 and SBU/AUX lines are disabled
* When LTTPR/Retimer started to act funny and not configured correctly
by EC
* When we have a bug in the PMC mux configuration because of bug in the
following files: drivers/usb/typec/mux/intel_pmc_mux.c and
drivers/platform/x86/intel_scu_ipc.c
* When user space is not cleanly disconnected all MST connectors for
disconnected MST hub with 2+ display. We will be left with enabled
pipes although the cable is disconnected and next connect of type-c
display will give aux timeout: 
  ** User space fix in Chrome: 
https://chromium-review.googlesource.com/c/chromium/src/+/2512550/ 
  ** WA in driver: https://patchwork.freedesktop.org/patch/395901/ 

These logs are especially important for Chrome based platforms with
type-C. Seeing these logs we can know who is screwing up (TCSS driver,
CB, or EC).

By removing this log we are left with a generic error from
drm_dp_dpcd_access:	
DRM_DEBUG_KMS("%s: Too many retries, giving up. First error: %d\n",
		      aux->name, err);

I know these Aux timeout logs are annoying, but at least can we use the
same log level used for printing aux transaction in
drm_dp_helper.c/drm_dp_dump_access (DRM_DEBUG_DP)
            if (ret > 0)
		DRM_DEBUG_DP("%s: 0x%05x AUX %s (ret=%3d) %*ph\n",
			     aux->name, offset, arrow, ret, min(ret,
20), buffer);
	else
		DRM_DEBUG_DP("%s: 0x%05x AUX %s (ret=%3d)\n",
			     aux->name, offset, arrow, ret);

Thanks
Khaled
> >  		ret = -ETIMEDOUT;
> >  		goto out;
> >  	}
> > -- 
> > 2.20.1
> > 
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx



[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux