This patch series provides the missing support for high TMDS clock ratio
and scrambling to DW HDMI QP TX library, required for handling HDMI 2.0
display modes on RK3576 & RK3588 SoCs.
In order to allow addressing the SCDC status lost on sink disconnects,
it adds an atomic variant of the drm_bridge_funcs.detect callback and a
new drm_bridge_detect_ctx() helper, which is further used in
drm_bridge_connector to switch to ->detect_ctx hook.
Furthermore, it optimizes HPD event handling in dw_hdmi_qp Rockchip
platform driver to run the detect cycle on the affected connector only.
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
---
Changes in v3:
- Used drm_bridge_helper_reset_crtc() helper to reset the display
pipeline and got rid of some boilerplate code (Maxime)
- Rebased onto latest drm-misc-next
- Link to v2: https://lore.kernel.org/r/20260113-dw-hdmi-qp-scramb-v2-0-ae7b2c58d24d@collabora.com
Changes in v2:
- Collected Tested-by tags from Diederik and Maud
- Rebased onto latest drm-misc-next
- Ensured the recently introduced 'no-hpd' support for dealing with
unconnected/repurposed/broken HPD pin is limited to HDMI 1.4 rates
- Link to v1: https://lore.kernel.org/r/20251203-dw-hdmi-qp-scramb-v1-0-836fe7401a69@collabora.com
---
Cristian Ciocaltea (4):
drm/bridge: Add ->detect_ctx hook and drm_bridge_detect_ctx()
drm/bridge-connector: Switch to using ->detect_ctx hook
drm/bridge: dw-hdmi-qp: Add high TMDS clock ratio and scrambling support
drm/rockchip: dw_hdmi_qp: Do not send HPD events for all connectors
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 167 ++++++++++++++++++++++---
drivers/gpu/drm/display/drm_bridge_connector.c | 73 +++++------
drivers/gpu/drm/drm_bridge.c | 58 +++++++++
drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c | 44 +++----
include/drm/drm_bridge.h | 30 +++++
5 files changed, 296 insertions(+), 76 deletions(-)
---
base-commit: 1c21f240fbc1e47b94e68abfa2da2c01ed29a74d
change-id: 20251203-dw-hdmi-qp-scramb-cdbd8b57ccf9