mbox series

[00/13] drm: Add generic helpers for HDMI scrambling

Message ID 20211102145944.259181-1-maxime@cerno.tech (mailing list archive)
Headers show
Series drm: Add generic helpers for HDMI scrambling | expand

Message

Maxime Ripard Nov. 2, 2021, 2:59 p.m. UTC
Hi,

This is a follow-up of the work to support the interactions between the hotplug
and the scrambling support for vc4:

https://lore.kernel.org/dri-devel/20210507150515.257424-11-maxime@cerno.tech/
https://lore.kernel.org/dri-devel/20211025152903.1088803-10-maxime@cerno.tech/

Ville feedback was that the same discussion happened some time ago for i915,
and resulted in a function to do an full disable/enable cycle on reconnection
to avoid breaking the HDMI 2.0 spec.

This series improves the current scrambling support by adding generic helpers
for usual scrambling-related operations, and builds upon them to provide a
generic alternative to intel_hdmi_reset_link.

Let me know what you think,
Maxime

Maxime Ripard (13):
  drm/connector: Add define for HDMI 1.4 Maximum Pixel Rate
  drm/connector: Add helper to check if a mode requires scrambling
  drm/atomic: Add HDMI scrambler state helper
  drm/atomic: Add HDMI reset link helper
  drm/scdc: Document hotplug gotchas
  drm/vc4: hdmi: Remove unused argument in vc4_hdmi_supports_scrambling
  drm/vc4: hdmi: Remove mutex in detect
  drm/vc4: hdmi: Remove HDMI flag from encoder
  drm/vc4: hdmi: Simplify the hotplug handling
  drm/vc4: hdmi: Simplify the connector state retrieval
  drm/vc4: hdmi: Switch to detect_ctx
  drm/vc4: hdmi: Leverage new SCDC atomic_check
  drm/vc4: hdmi: Reset link on hotplug

 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c  |   4 +-
 drivers/gpu/drm/drm_atomic_helper.c        | 109 ++++++++++
 drivers/gpu/drm/drm_atomic_state_helper.c  |  58 ++++++
 drivers/gpu/drm/drm_edid.c                 |   2 +-
 drivers/gpu/drm/drm_scdc_helper.c          |  13 ++
 drivers/gpu/drm/i915/display/intel_hdmi.c  |   2 +-
 drivers/gpu/drm/meson/meson_dw_hdmi.c      |   4 +-
 drivers/gpu/drm/radeon/radeon_encoders.c   |   2 +-
 drivers/gpu/drm/sti/sti_hdmi_tx3g4c28phy.c |   2 +-
 drivers/gpu/drm/tegra/sor.c                |  10 +-
 drivers/gpu/drm/vc4/vc4_hdmi.c             | 232 +++++++++------------
 drivers/gpu/drm/vc4/vc4_hdmi.h             |  17 +-
 include/drm/drm_atomic_helper.h            |   3 +
 include/drm/drm_atomic_state_helper.h      |   3 +
 include/drm/drm_connector.h                |  27 +++
 include/drm/drm_modes.h                    |  15 ++
 16 files changed, 342 insertions(+), 161 deletions(-)