Re: [PATCH 4/4] drm/i915: don't try to retrain a DP link on an inactive CRTC

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

 



On Mon, Aug 11, 2014 at 10:04:51PM +0300, Imre Deak wrote:
> Atm we may retrain the DP link even if the CRTC is inactive through
> HPD work->intel_dp_check_link_status(). This in turn can lock up the PHY
> (at least on BYT), since the DP port is disabled.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=81948
> Signed-off-by: Imre Deak <imre.deak@xxxxxxxxx>
> ---
>  drivers/gpu/drm/i915/intel_dp.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index d7f5d0a..49de9be 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -3551,6 +3551,9 @@ intel_dp_check_link_status(struct intel_dp *intel_dp)
>  	if (WARN_ON(!intel_encoder->base.crtc))
>  		return;
>  
> +	if (!to_intel_crtc(intel_encoder->base.crtc)->active)
> +		return;

Yeah the connectors_active check isn't enough since we don't clear that
when we disable the crtcs for system suspend. Maybe we should do that
instead?

Anyway this check seems fine to me regardless of how we deal with
connectors_active during system suspend, so:
Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>

> +
>  	/* Try to read receiver status if the link appears to be up */
>  	if (!intel_dp_get_link_status(intel_dp, link_status)) {
>  		return;
> -- 
> 1.8.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux