mbox series

[GIT,PULL,FOR,v6.12] media: cec: add extron-da-hd-4k-plus driver

Message ID 27ff90a4-8caa-45b3-b6f4-a53bbd732467@xs4all.nl (mailing list archive)
State New
Headers show
Series [GIT,PULL,FOR,v6.12] media: cec: add extron-da-hd-4k-plus driver | expand

Pull-request

git://linuxtv.org/hverkuil/media_tree.git tags/br-extron

Message

Hans Verkuil Aug. 29, 2024, 11:11 a.m. UTC
Hi Mauro,

This patch series adds CEC/EDID support for the Extron DA HD 4K Plus HDMI splitter.

The first three patches introduce the V4L2_CAP_EDID capability: drivers with
that capability set only support setting/getting EDIDs for inputs/outputs. There is no
video capture or output, that is all handled in the device. This is the case
for an HDMI Splitter like this, but also for EDID EEPROM drivers (which I hope to
revisit as well at some point).

The fourth patch adds a serio define for this device in the header: this will
be used by the inputattach utility (it is similar to the pulse8-cec driver, which
is also serio based).

The fifth patch moves code around so cec_get/put_device is available to the
driver. And the final patch adds the driver itself.

Note: this driver has been in use for quite some time out-of-tree.

Patches to support V4L2_CAP_EDID in v4l-utils are here:

https://patchwork.linuxtv.org/project/linux-media/list/?series=13487

Regards,

	Hans

The following changes since commit 393556c9f56ced8d9776c32ce99f34913cfd904e:

  Merge tag 'tags/next-media-videobuf-20240827' of git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux.git (2024-08-28 13:11:49 +0200)

are available in the Git repository at:

  git://linuxtv.org/hverkuil/media_tree.git tags/br-extron

for you to fetch changes up to 6dc50ad1862903373aeaf2a73ab757e4acc2031b:

  media: cec: extron-da-hd-4k-plus: add the Extron DA HD 4K Plus CEC driver (2024-08-29 11:10:36 +0200)

----------------------------------------------------------------
Tag branch

----------------------------------------------------------------
Erling Ljunggren (3):
      media: videodev2.h: add V4L2_CAP_EDID
      media: v4l2-dev: handle V4L2_CAP_EDID
      media: docs: Add V4L2_CAP_EDID

Hans Verkuil (3):
      input: serio.h: add SERIO_EXTRON_DA_HD_PLUS
      media: cec: move cec_get/put_device to header
      media: cec: extron-da-hd-4k-plus: add the Extron DA HD 4K Plus CEC driver

 Documentation/admin-guide/media/cec.rst                           |   87 +++
 Documentation/userspace-api/media/v4l/biblio.rst                  |   11 +
 Documentation/userspace-api/media/v4l/vidioc-querycap.rst         |   11 +
 Documentation/userspace-api/media/videodev2.h.rst.exceptions      |    1 +
 MAINTAINERS                                                       |    7 +
 drivers/media/cec/core/cec-api.c                                  |    4 +-
 drivers/media/cec/core/cec-core.c                                 |   29 -
 drivers/media/cec/core/cec-priv.h                                 |    2 -
 drivers/media/cec/usb/Kconfig                                     |    1 +
 drivers/media/cec/usb/Makefile                                    |    1 +
 drivers/media/cec/usb/extron-da-hd-4k-plus/Kconfig                |   14 +
 drivers/media/cec/usb/extron-da-hd-4k-plus/Makefile               |    8 +
 drivers/media/cec/usb/extron-da-hd-4k-plus/cec-splitter.c         |  657 +++++++++++++++++++++++
 drivers/media/cec/usb/extron-da-hd-4k-plus/cec-splitter.h         |   51 ++
 drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c | 1836 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.h |  118 ++++
 drivers/media/v4l2-core/v4l2-dev.c                                |   15 +
 include/media/cec.h                                               |   31 ++
 include/uapi/linux/serio.h                                        |    1 +
 include/uapi/linux/videodev2.h                                    |    1 +
 20 files changed, 2853 insertions(+), 33 deletions(-)
 create mode 100644 drivers/media/cec/usb/extron-da-hd-4k-plus/Kconfig
 create mode 100644 drivers/media/cec/usb/extron-da-hd-4k-plus/Makefile
 create mode 100644 drivers/media/cec/usb/extron-da-hd-4k-plus/cec-splitter.c
 create mode 100644 drivers/media/cec/usb/extron-da-hd-4k-plus/cec-splitter.h
 create mode 100644 drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.c
 create mode 100644 drivers/media/cec/usb/extron-da-hd-4k-plus/extron-da-hd-4k-plus.h