From a74da8b699972894ad4d07efbde5b4cfc4bc0f72 Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Thu, 10 May 2012 13:21:57 +0200 Subject: [PATCH] drm/i915: don't return -ENXIO from gmbus xfer ... too much risk for flaky edid transfers. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=49518 Signed-Off-by: Daniel Vetter --- drivers/gpu/drm/i915/intel_i2c.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c index e04255e..0588d8e 100644 --- a/drivers/gpu/drm/i915/intel_i2c.c +++ b/drivers/gpu/drm/i915/intel_i2c.c @@ -418,10 +418,11 @@ clear_err: * If no ACK is received during the address phase of a transaction, * the adapter must report -ENXIO. * It is not clear what to return if no ACK is received at other times. - * So, we always return -ENXIO in all NAK cases, to ensure we send - * it at least during the one case that is specified. + * + * Unfortunately we can't afford false positives in returning -ENXIO, + * hence never return -ENXIO. */ - ret = -ENXIO; + ret = i; goto out; timeout: -- 1.7.10