]> git.baikalelectronics.ru Git - kernel.git/commit
drm: Decouple EDID parsing from I2C adapter
authorLars-Peter Clausen <lars@metafoo.de>
Fri, 27 Apr 2012 09:11:58 +0000 (11:11 +0200)
committerLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Wed, 26 Nov 2014 18:09:39 +0000 (20:09 +0200)
commit3a01d98b439f535b64a2d94d8f1c3e140a5cc76d
tree3c9b5f39237e4bd90bb0685b1bfbcdf119ddcd03
parent7d438835056fcb11399d6e54b11e53542a86e819
drm: Decouple EDID parsing from I2C adapter

The drm_get_edid() function performs direct I2C accesses to read EDID
blocks, assuming that the monitor DDC interface is directly connected to
the I2C bus. It can't thus be used with HDMI encoders that control the
DDC bus and expose EDID blocks through a different interface.

Refactor drm_do_get_edid() to take a block read callback function
instead of an I2C adapter, and export it for direct use by drivers.

As in the general case the DDC bus is accessible by the kernel at the
I2C level, drivers must make all reasonable efforts to expose it as an
I2C adapter and use drm_get_edid() instead of abusing this function.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Rob Clark <robdclark@gmail.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/drm_edid.c
include/drm/drm_edid.h