From bacab09d8055907af8b90479fa8093b631237352 Mon Sep 17 00:00:00 2001 From: Mika Kuoppala Date: Tue, 9 Jul 2013 17:47:44 +0300 Subject: [PATCH] drm/i915: Don't fallback to ddc probe if downstream port is dummy If branch device advertise dummy enough sink, bail out early trusting to sink count instead of falling back to ddc probe which is deemed to fail. References: https://bugs.freedesktop.org/show_bug.cgi?id=60263 Signed-off-by: Mika Kuoppala --- drivers/gpu/drm/i915/intel_dp.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 11eb697..67d88d2 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -2406,9 +2406,15 @@ intel_dp_detect_dpcd(struct intel_dp *intel_dp) if (!(dpcd[DP_DOWNSTREAMPORT_PRESENT] & DP_DWN_STRM_PORT_PRESENT)) return connector_status_connected; + /* Analog or other */ +#define DP_PORT_TYPE_DUMMY 0x2 + /* If we're HPD-aware, SINK_COUNT changes dynamically */ hpd = !!(intel_dp->downstream_ports[0] & DP_DS_PORT_HPD); - if (hpd) { + + /* ...and if the downstream port type is dummy enough + * dont fall into ddc probe as it will fail */ + if (hpd || dpcd[DP_DOWNSTREAMPORT_PRESENT] & DP_PORT_TYPE_DUMMY) { uint8_t reg; if (!intel_dp_aux_native_read_retry(intel_dp, DP_SINK_COUNT, ®, 1)) -- 1.7.9.5