This patch series makes vivid V4L2-compliant by adding HDMI (dis)- connect emulation. This is done by by adding a custom display_present control to vivid output HDMI devices, along with the following standard controls: -ctrl_tx_edid_present -ctrl_tx_hotplug -ctrl_tx_rxsense -ctrl_rx_power_present With regard to v4l2-compliance: Series fixes the following 1/1 warning for HDMI input devices: -V4L2_CID_DV_RX_POWER_PRESENT not found for input n Series fixes the following 2/2 warnings for HDMI ouptut devices: -V4L2_CID_DV_TX_HOTPLUG not found for output n -V4L2_CID_DV_TX_EDID_PRESENT not found for output n Regards, Johan v2 -> v3: - Various checkpatch.pl fixes. There are still some warnings as I am not sure those really apply. Please let me know if they do, and I will fix them ASAP. - PTR_ERR_OR_ZERO -> PTR_ERR where applicable - Fix broken check for cec adapter not NULL v1 -> v2: - New patch: media: vivid: reorder CEC allocation and control set-up - vidioc_s_edid: Use bitmask (not boolean) value for bitmask controls - vidioc_g_edid: Changed dev->output to edid->pad Johan Korsnes (9): media: vivid: make input dv_timings per-input media: vivid: make input std_signal per-input media: vivid: add display present control media: vivid: add number of HDMI ports to device state media: vivid: add HDMI (dis)connect TX emulation media: vivid: add HDMI (dis)connect RX emulation media: vivid: reorder CEC allocation and control set-up media: vivid: add CEC support to display present ctrl media: vivid.rst: describe display present control Documentation/media/v4l-drivers/vivid.rst | 5 + drivers/media/platform/vivid/vivid-core.c | 120 ++++++++++------ drivers/media/platform/vivid/vivid-core.h | 32 +++-- drivers/media/platform/vivid/vivid-ctrls.c | 108 ++++++++++++-- .../media/platform/vivid/vivid-kthread-cap.c | 8 +- drivers/media/platform/vivid/vivid-vbi-cap.c | 16 +-- drivers/media/platform/vivid/vivid-vid-cap.c | 135 ++++++++++++------ .../media/platform/vivid/vivid-vid-common.c | 8 +- drivers/media/platform/vivid/vivid-vid-out.c | 6 + 9 files changed, 312 insertions(+), 126 deletions(-)