[PATCH 0/8] Organize and offload aux retries to drm. (v2)

Rodrigo Vivi
2015-11-21T00:46:22Z

The goal of this series is to remove many different retries we have
for aux communication and offload them to drm.

However on first attempt I was only returning EBUSY to use drm retries
but there was no waiting there. So this series also introduce a new
approach on drm level to retry on aux communication failures:

1 - EAGAIN: Immediatelly retry since HW might already taken care of the
needed waitings.
2 - EBUSY: Something is probably busy and we are not getting what we
expected so wait 1ms before trying again so we give time to aux
channels to recover.

Thanks,
Rodrigo.

Rodrigo Vivi (8):
drm: Introduce EAGAIN handling for immediatelly aux retries
drm/nouveau: Use EAGAIN instead EBUSY for aux retry.
drm/i915: Use EAGAIN instead EBUSY for aux retry.
drm: Wait 1ms before retrying aux transactions on EBUSY.
drm/i915: Avoid EBUSY retry on intel_dp_aux_ch.
drm/i915: Remove remaining retries from intel_dp_aux_ch.
drm/i915: Fix random aux transactions failures.
drm/i915: Kill intel_dp_dpcd_read_wake

drivers/gpu/drm/drm_dp_helper.c | 9 +-
drivers/gpu/drm/i915/intel_dp.c | 192 +++++++++------------
drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxg94.c | 4 +-
drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm204.c | 4 +-
4 files changed, 93 insertions(+), 116 deletions(-)