[PATCH v6 0/2] Add no-hpd property to the cadence bridge

From: Yashas D

Date: Sun Aug 02 2026 - 11:43:42 EST


This series adds 'no-hpd' device tree property support to the Cadence
MHDP8546 bridge driver for boards where the HPD line cannot be used for
hotplug detection.

On TI J721S2 EVMs, the DP0 HPD resistor is DNI from factory, so the HPD
signal is not physically connected to SoC pin AA24 by default. AA24 must
still be in DP0_HPD mux mode for the MHDP firmware to operate.

When 'no-hpd' is set, DRM_BRIDGE_OP_HPD is omitted and the framework
falls back to polling .detect() every ~10 seconds. Presence is detected
by reading DP_DPCD_REV (0x000) over AUX, with an early exit when the
monitor is stably connected to avoid re-programming the stream each poll.

Changes since v5:
- Corrected hardware description: conflict is with RGMII1_RD0 on GESI
ethernet board, not MCASP1 audio
- Fixed YAML parse error caused by bullet list in binding description
- Removed 100ms firmware timeout
- Fixed sst_enable() called on every poll: added early exit when link
is already up
- Switched presence probe to DP_DPCD_REV (0x000) to avoid reading link
training status registers unnecessarily
- Fixed lockless hw_state read in bridge_detect(): now reads under
start_lock
- Fixed data race in attach(): use hw_ready snapshot, not bare
mhdp->hw_state after lock release

Link to v5: https://lore.kernel.org/all/20260728125336.776116-1-y-d@xxxxxx/

Rahul T R (2):
dt-bindings: display: bridge: cdns,mhdp8546: Add no-hpd property to
the cadence bridge
drm: bridge: cdns-mhdp8546: Add no-hpd property

.../display/bridge/cdns,mhdp8546.yaml | 11 +++
.../drm/bridge/cadence/cdns-mhdp8546-core.c | 79 +++++++++++++++++--
.../drm/bridge/cadence/cdns-mhdp8546-core.h | 1 +
3 files changed, 83 insertions(+), 8 deletions(-)

--
2.34.1