[Intel-gfx] [PATCH] drm/i915: don't return -ENXIO from gmbus xfer
Daniel Vetter
daniel at ffwll.ch
Sun May 20 17:19:16 CEST 2012
On Sat, May 19, 2012 at 10:10:12PM +0200, Daniel Vetter wrote:
> ... too much risk for flaky edid transfers.
>
> This regression has been introduced in
>
> commit e646d5773572bf52017983d758bdf05777dc5600
> Author: Daniel Kurtz <djkurtz at chromium.org>
> Date: Fri Mar 30 19:46:38 2012 +0800
>
> drm/i915/intel_i2c: always wait for IDLE before clearing NAK
>
> This patch keeps the improved NAK handling on the hw side, but reverts
> the change to return -ENXIO in case the gmbus controller reports a
> NAK.
>
> Cc: Daniel Kurtz <djkurtz at chromium.org>
Hi Daniel,
Can you please take a look at this one and smash your r-b onto it if you
agree?
Thanks, Daniel
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=49518
> Reported-and-Tested-by: Julian Simioni <julian.simioni at gmail.com>
> Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> ---
> 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
>
--
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48
More information about the Intel-gfx
mailing list