[Intel-gfx] [PATCH v3] drm/i915/dp: Give up link training clock recovery after 10 failed attempts

Dhinakaran Pandiyan dhinakaran.pandiyan at intel.com
Tue Jul 17 22:21:17 UTC 2018


On Mon, 2018-07-16 at 16:51 -0700, Marc Herbert wrote:
> > 
> > > 
> > > I think the bug is with this infinite loop which is at the mercy
> > > of an external device
> > > and in my case I have this MST hub which appears to be DP 1.2
> > > that triggers the
> > > infinite loop case. We have to limit the number of iterations and
> > > DP 1.4 spec happened to fix this issue. I'm a newbie in this area
> > > but in this case
> > > shouldn't we apply the same counter to all <= "DP 1.4" devices?
> > ok, the infinite loop situation is really bad... but I don't
> > believe
> > we are going with the right fix...
> > and a good indication is that your fix is for DP-1.4 while your bug
> > is seeing on DP-1.2
> I thought the only reason the infinite loop fix isn't in 1.2 is just
> because there's
> no 1.2.1 spec... (plus the naive assumption that buggy sinks don't
> exist)
> 
Irrespective of whether the sink is DP1.2 or 1.4, if there are sinks
out there that keep toggling between two values there should be an
overall limit to how many times this loop gets executed. Even if this
isn't right fix for the issue at hand, the loop has to break.

Then there's the question of what the limit should be. We could use the
DP1.4 limit as a reference and apply it widely. But there's a problem
here, we have 4 vswing values and 4 pre-emphasis values. If the sink
progressively changes one variable at a time, we'll need at least 16
iterations. Nathan's patch here will prematurely error out and that
doesn't sound reasonable to impose on non DP1.4 sinks.

-DK


> 
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx


More information about the Intel-gfx mailing list