DRM's EDID read helpers probe DDC before consulting debugfs or firmware
overrides. This preserves connector-detection semantics for drivers that
use a successful EDID read as evidence that a sink is connected, but it
prevents drivers with independent presence detection from using an
override when DDC is unresponsive.

This affects AMD Display Core, which establishes physical presence from
HPD before attempting to read the EDID. When a connected sink stops
responding over DDC, the configured override is ignored and AMDGPU falls
back to a 640x480 mode.

Add an override-only EDID reader that does not access hardware, then use
it in AMD Display Core before trying ACPI, VBIOS, or DDC sources. The new
helper preserves DRM_FORCE_OFF handling and the existing preference for
debugfs overrides over firmware EDIDs.

The first patch introduces the helper. The second fixes the AMDGPU
regression.

Mario Limonciello (2):
  drm/edid: Add an override-only EDID reader
  drm/amd/display: Honor EDID overrides for connected sinks

 .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 14 +++++++-----
 drivers/gpu/drm/drm_edid.c                    | 22 +++++++++++++++++++
 include/drm/drm_edid.h                        |  1 +
 3 files changed, 32 insertions(+), 5 deletions(-)

-- 
2.43.0

Reply via email to