[Intel-gfx] [PATCH RESEND] drm: i915: Don't try detecting sinks on ports already in use

Chris Wilson chris at chris-wilson.co.uk
Thu May 4 21:02:31 UTC 2017


On Thu, May 04, 2017 at 05:36:49PM -0300, Gabriel Krisman Bertazi wrote:
> On systems where more than one connector is attached to the same port,
> the HPD pin is also shared, and attaching one connector will trigger a
> hotplug on every other connector on that port.  But, according to the
> documentation, connectors sharing the port cannot be enabled
> simultaneously, such that we can abort the detection process early if
> another connector was detected succesfully.
> 
> This has the good side effect of preventing DP timeouts whenever
> something else is connected to the shared port, like below:
> 
> [drm:intel_dp_aux_ch [i915]] dp_aux_ch timeout status 0x7143003f
> [drm:drm_dp_dpcd_access] Too many retries, giving up. First error: -110
> 
> Since this reduces the overhead of the i915_hotplug_work_func, it may
> address the following vblank misses detected by the CI:
> 
> https://bugs.freedesktop.org/show_bug.cgi?id=100215
> https://bugs.freedesktop.org/show_bug.cgi?id=100558
> 
> Signed-off-by: Gabriel Krisman Bertazi <krisman at collabora.co.uk>

The key problem here is say a race between DP unplug and HDMI plug, and
users are evil enough (or common enough) for it to happen.

I thought the idea was reasonable though, and perhaps we could make
more use of the knowlege of the shared ports to improve detection of
common DP/HDMI DDIs (i.e. run detection once for a ddi and have it
decide whether it is hdmi or dp).
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list