public inbox for drm-ai-reviews@public-inbox.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH v5 00/10] Add HDMI 2.0 support to DW HDMI QP TX
@ 2026-04-26  0:20 Cristian Ciocaltea
  2026-04-26  0:20 ` [PATCH v5 01/10] drm/bridge: Remove redundant error check in drm_bridge_helper_reset_crtc() Cristian Ciocaltea
                   ` (10 more replies)
  0 siblings, 11 replies; 39+ messages in thread
From: Cristian Ciocaltea @ 2026-04-26  0:20 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Sandy Huang,
	Heiko Stübner, Andy Yan
  Cc: kernel, dri-devel, linux-kernel, linux-arm-kernel, linux-rockchip,
	Diederik de Haas, Maud Spierings

Enable HDMI 2.0 display modes (e.g. 4K@60Hz) on the Synopsys DW HDMI QP
TX controller, as found in Rockchip RK3576 & RK3588 SoCs, by adding SCDC
management for high TMDS clock ratio and scrambling.

Since SCDC state is lost on sink disconnects, the bridge driver needs to
trigger a CRTC reset during connector detection.  To support this, the
series introduces an atomic-aware detect_ctx bridge hook and a
drm_bridge_detect_ctx() helper (patches 1-4), then uses them to
implement the SCDC scrambling feature (patch 5).

Patches 6-8 are minor cleanups in the dw-hdmi-qp and Rockchip platform
drivers.  Patches 9-10 improve HPD handling by deferring IRQ
registration until the connector is fully initialized and restricting
HPD events to the affected connector.

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
---
Changes in v5:
- Added new patches: 1/10, 3/10, 6/10, 7/10, 8/10
- Removed redundant no-op error check in drm_bridge_helper_reset_crtc()
  (patch 1)
- Removed the EDEADLK retry loop from the bridge .detect_ctx() callback,
  as that's already handled in the drm_bridge_detect_ctx() helper or by
  the caller when ctx is provided (patch 2)
- Refactored drm_bridge_detect() to delegate to drm_bridge_detect_ctx()
  and added a WARN_ON for unexpected negative return values (patch 2)
- Split the bridge-connector .detect_ctx() switch into a preparatory
  patch to use cached connector status in .get_modes() (patch 3)
- Improved error handling in SCDC scrambling setup: roll back high TMDS
  clock ratio on scrambling failure, reset scramb_enabled flag on
  set_scramb failure, and add SCDC version read/write error checks
  (patch 5)
- Annotated scramb_enabled with READ_ONCE/WRITE_ONCE for cross-context
  access between modeset paths and the scrambling work item (patch 5)
- Renamed SCDC_MIN_SOURCE_VERSION to SCDC_MAX_SOURCE_VERSION (patch 5)
- Rate limited i2c error messages (patch 6)
- Added missing newlines in dev_err_probe() messages (patch 7)
- Replaced indirect device pointer accesses with local dev variable in
  bind() (patch 8)
- Split the HPD connector restriction (formerly patch 4/4): register HPD
  IRQ after connector setup first (patch 9), then restrict HPD event to
  the affected connector (patch 10); also collected R-b from Heiko
- Rebased onto latest drm-misc-next
- Link to v4: https://lore.kernel.org/r/20260303-dw-hdmi-qp-scramb-v4-0-317d3b8bd219@collabora.com

Changes in v4:
- Fixed conflicts while rebasing onto latest drm-misc-next
- Link to v3: https://lore.kernel.org/r/20260119-dw-hdmi-qp-scramb-v3-0-bd8611730fc1@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 (10):
      drm/bridge: Remove redundant error check in drm_bridge_helper_reset_crtc()
      drm/bridge: Add detect_ctx hook and drm_bridge_detect_ctx() helper
      drm/bridge-connector: Use cached connector status in .get_modes()
      drm/bridge-connector: Switch to .detect_ctx() for connector detection
      drm/bridge: dw-hdmi-qp: Add HDMI 2.0 SCDC scrambling and high TMDS clock ratio support
      drm/bridge: dw-hdmi-qp: Rate limit i2c read error messages
      drm/rockchip: dw_hdmi_qp: Add missing newlines in dev_err_probe() messages
      drm/rockchip: dw_hdmi_qp: Use local dev variable consistently in bind()
      drm/rockchip: dw_hdmi_qp: Register HPD IRQ after connector setup
      drm/rockchip: dw_hdmi_qp: Restrict HPD event to the affected connector

 drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c   | 192 ++++++++++++++++++++++---
 drivers/gpu/drm/display/drm_bridge_connector.c |  75 +++++-----
 drivers/gpu/drm/drm_bridge.c                   |  66 ++++++++-
 drivers/gpu/drm/drm_bridge_helper.c            |   2 -
 drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c |  68 ++++-----
 include/drm/drm_bridge.h                       |  43 +++++-
 6 files changed, 344 insertions(+), 102 deletions(-)
---
base-commit: 03af6c3afc4893988ceed54531f5dde4bebd6024
change-id: 20251203-dw-hdmi-qp-scramb-cdbd8b57ccf9


^ permalink raw reply	[flat|nested] 39+ messages in thread
* [PATCH RESEND v4 0/4] Add HDMI 2.0 support to DW HDMI QP TX
@ 2026-03-23 17:45 Cristian Ciocaltea
  2026-03-24 21:36 ` Claude review: " Claude Code Review Bot
  0 siblings, 1 reply; 39+ messages in thread
From: Cristian Ciocaltea @ 2026-03-23 17:45 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Sandy Huang,
	Heiko Stübner, Andy Yan
  Cc: kernel, dri-devel, linux-kernel, linux-arm-kernel, linux-rockchip,
	Diederik de Haas, Maud Spierings

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 using the ->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 v4:
- Fixed conflicts while rebasing onto latest drm-misc-next
- Link to v3: https://lore.kernel.org/r/20260119-dw-hdmi-qp-scramb-v3-0-bd8611730fc1@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: 0dd7a23da214279cfb77b0eb03c38614867524d7
change-id: 20251203-dw-hdmi-qp-scramb-cdbd8b57ccf9
-- 
Cristian Ciocaltea <cristian.ciocaltea@collabora.com>


^ permalink raw reply	[flat|nested] 39+ messages in thread
* [PATCH v4 0/4] Add HDMI 2.0 support to DW HDMI QP TX
@ 2026-03-03  1:38 Cristian Ciocaltea
  2026-03-03  2:42 ` Claude review: " Claude Code Review Bot
  0 siblings, 1 reply; 39+ messages in thread
From: Cristian Ciocaltea @ 2026-03-03  1:38 UTC (permalink / raw)
  To: Andrzej Hajda, Neil Armstrong, Robert Foss, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, David Airlie, Simona Vetter, Sandy Huang,
	Heiko Stübner, Andy Yan
  Cc: kernel, dri-devel, linux-kernel, linux-arm-kernel, linux-rockchip,
	Diederik de Haas, Maud Spierings

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 using the ->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 v4:
- Fixed conflicts while rebasing onto latest drm-misc-next
- Link to v3: https://lore.kernel.org/r/20260119-dw-hdmi-qp-scramb-v3-0-bd8611730fc1@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: 0dd7a23da214279cfb77b0eb03c38614867524d7
change-id: 20251203-dw-hdmi-qp-scramb-cdbd8b57ccf9


^ permalink raw reply	[flat|nested] 39+ messages in thread

end of thread, other threads:[~2026-04-28  5:25 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-26  0:20 [PATCH v5 00/10] Add HDMI 2.0 support to DW HDMI QP TX Cristian Ciocaltea
2026-04-26  0:20 ` [PATCH v5 01/10] drm/bridge: Remove redundant error check in drm_bridge_helper_reset_crtc() Cristian Ciocaltea
2026-04-27 21:46   ` Dmitry Baryshkov
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 02/10] drm/bridge: Add detect_ctx hook and drm_bridge_detect_ctx() helper Cristian Ciocaltea
2026-04-27 11:00   ` Heiko Stuebner
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 03/10] drm/bridge-connector: Use cached connector status in .get_modes() Cristian Ciocaltea
2026-04-27 21:52   ` Dmitry Baryshkov
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 04/10] drm/bridge-connector: Switch to .detect_ctx() for connector detection Cristian Ciocaltea
2026-04-27 21:54   ` Dmitry Baryshkov
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 05/10] drm/bridge: dw-hdmi-qp: Add HDMI 2.0 SCDC scrambling and high TMDS clock ratio support Cristian Ciocaltea
2026-04-27 10:49   ` Heiko Stuebner
2026-04-27 16:39     ` Cristian Ciocaltea
2026-04-27 19:09       ` Heiko Stuebner
2026-04-27 19:10   ` Heiko Stuebner
2026-04-28  1:38   ` Dmitry Baryshkov
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 06/10] drm/bridge: dw-hdmi-qp: Rate limit i2c read error messages Cristian Ciocaltea
2026-04-27 10:41   ` Heiko Stuebner
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 07/10] drm/rockchip: dw_hdmi_qp: Add missing newlines in dev_err_probe() messages Cristian Ciocaltea
2026-04-27 10:39   ` Heiko Stuebner
2026-04-28  1:40   ` Dmitry Baryshkov
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 08/10] drm/rockchip: dw_hdmi_qp: Use local dev variable consistently in bind() Cristian Ciocaltea
2026-04-27 10:39   ` Heiko Stuebner
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 09/10] drm/rockchip: dw_hdmi_qp: Register HPD IRQ after connector setup Cristian Ciocaltea
2026-04-28  1:41   ` Dmitry Baryshkov
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-26  0:20 ` [PATCH v5 10/10] drm/rockchip: dw_hdmi_qp: Restrict HPD event to the affected connector Cristian Ciocaltea
2026-04-28  1:53   ` Dmitry Baryshkov
2026-04-28  5:25   ` Claude review: " Claude Code Review Bot
2026-04-28  5:25 ` Claude review: Add HDMI 2.0 support to DW HDMI QP TX Claude Code Review Bot
  -- strict thread matches above, loose matches on Subject: below --
2026-03-23 17:45 [PATCH RESEND v4 0/4] " Cristian Ciocaltea
2026-03-24 21:36 ` Claude review: " Claude Code Review Bot
2026-03-03  1:38 [PATCH v4 0/4] " Cristian Ciocaltea
2026-03-03  2:42 ` Claude review: " Claude Code Review Bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox