[PATCH 0/3] Reset i2c connection between xfers

Alex Deucher alexdeucher at gmail.com
Fri Apr 4 07:40:55 PDT 2014


When switching to the new common i2c over aux code,
I ran into problems fetching the EDID on certain DP monitors.
I tracked this down to the lack of bare address packets being
sent between i2c transfers.  This patch set adds that functionality
which brings it back inline with the old drm dpm i2c algo.

Originally, I added flags to note a bare address packet, but after
review switched to sending a zero sized packet instead. Note that I'm
not sure the other drivers that use these helpers currently handle
zero sized packets properly.  I had to fix up radeon to do so.

Alex Deucher (3):
  drm/radeon/dp: handle zero sized i2c over aux transactions
  drm/dp/i2c: send bare addresses to properly reset i2c connections
  drm/radeon/dp: switch to the common i2c over aux code

 drivers/gpu/drm/drm_dp_helper.c            |  53 +++++++-----
 drivers/gpu/drm/radeon/atombios_dp.c       | 132 ++++++-----------------------
 drivers/gpu/drm/radeon/radeon_connectors.c |  44 ++--------
 drivers/gpu/drm/radeon/radeon_display.c    |  11 ++-
 drivers/gpu/drm/radeon/radeon_i2c.c        |  60 +++----------
 drivers/gpu/drm/radeon/radeon_mode.h       |  12 +--
 6 files changed, 85 insertions(+), 227 deletions(-)

-- 
1.8.3.1



More information about the dri-devel mailing list