[Intel-gfx] [PATCH 0/4] Organize aux retries.

Rodrigo Vivi rodrigo.vivi at intel.com
Wed Oct 21 10:28:50 PDT 2015


drm level already takes care of retries on EBUSY and we had
retries all over intel layer. So let's organize it a bit.

Everything started with aux communications on sink_crc
were failing a lot randomly on recent platforms.
The first solution was to try to use intel_dp_dpcd_read_wake, but then
it was suggested to move retries to drm level.

Since drm level was already taking care of retries and didn't want
to through random retries on that level the second solution was to
put the retries at aux_transfer layer what was nacked.

So I realized we had so many retries in different places and
started to organize that a bit. Instead of duplicating the retries
on our code, whenever we need to retry or we don't know what failed
we can return EBUSY so drm level will take care of retries.

Also during this investigation I noticed we weren't handling
forbiddens message size. This is fixed with patch 3/4.

Rodrigo Vivi (4):
  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/i915/intel_dp.c | 195 ++++++++++++++++++----------------------
 1 file changed, 85 insertions(+), 110 deletions(-)

-- 
2.4.3



More information about the Intel-gfx mailing list