This series adds support for the standalone cat24c208 EDID EEPROM i2c device. Usually EDID support is part of an HDMI receiver, but this is a standalone EEPROM. Note that EEPROMs for EDIDs are not regular EEPROM devices, these are dual port devices that follow the VESA E-DDC standard. Since this is a standalone device that does not capture any video a new V4L2_CAP_EDID capability is introduced to represent such devices. Note that such a device doesn't have to be an EEPROM, it can also be implemented using a microcontroller, for example. v3: - use old V4L2_CAP_ASYNCIO (0x02000000) capability bit - validate physical address of edid in driver - handle empty edid in driver - add cec notifier support to driver - update driver and bindings with hpd gpio support - removed references to "memory" in capability and docs - associate ioctls based on device direction v2: - fix dt binding example - rename i2c client variables in data struct - fix include: of_device.h -> mod_devicetable.h - Sorted makefile - used define EDID_OFFSET_EXT_FLAG instead of magic number - removed of_match_ptr - added bus_info - remove unneeded headers - add depends on OF to Kconfig Erling Ljunggren (4): media: videodev2.h: add V4L2_CAP_EDID media: docs: Add V4L2_CAP_EDID dt-bindings: media: add cat24c208 bindings media: v4l2-dev: handle V4L2_CAP_EDID Jonathan Selnes (1): media: i2c: cat24c208: driver for the cat24c208 EDID EEPROM .../bindings/media/i2c/onnn,cat24c208.yaml | 48 ++ .../userspace-api/media/v4l/biblio.rst | 11 + .../media/v4l/vidioc-querycap.rst | 11 + .../media/videodev2.h.rst.exceptions | 1 + MAINTAINERS | 7 + drivers/media/i2c/Kconfig | 9 + drivers/media/i2c/Makefile | 1 + drivers/media/i2c/cat24c208.c | 480 ++++++++++++++++++ drivers/media/v4l2-core/v4l2-dev.c | 15 + include/uapi/linux/videodev2.h | 1 + 10 files changed, 584 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/i2c/onnn,cat24c208.yaml create mode 100644 drivers/media/i2c/cat24c208.c -- 2.37.3