When dc_link_detect_connection_type thinks that a display is connected, but dc_link_detect failed, enqueue delayed work to retry the link detection again.
Useful when eg. HPD pin is high but the display isn't ready and didn't respond to DDC. Typically this may happen when the HPD pins make contact before the DDC pins, or when the display is "slow to wake up" and doesn't respond on DDC. The first few patches are just a slight refactor to de-duplicate some code and do some cleanup necessary for the retry. This is to avoid adding even more duplicated code. Timur Kristóf (5): drm/amd/display: Add detect reason to handle_hpd_irq_helper drm/amd/display: Use handle_hpd_irq_helper for HPD RX drm/amd/display: Always create delayed HPD work queue drm/amd/display: Retry link detection on hotplug drm/amd/display: Retry link detection on resume and boot .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 216 +++++++++++++----- .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 16 ++ 2 files changed, 179 insertions(+), 53 deletions(-) -- 2.54.0
