OSDN Git Service

drm/amd/display: Don't disable DP PHY when link loss happens
authorZhan Liu <zhan.liu@amd.com>
Mon, 23 Dec 2019 20:37:24 +0000 (15:37 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 14 Jan 2020 15:18:09 +0000 (10:18 -0500)
[Why]
There is a use case that link loss happens accidentally,
and we need to recover that link loss as soon as possible.
Under this circumstance, we will perform link training,
and try to recover the link that's just lost.

However, if link PHY is disabled before link training
happens, then DP display will never come back again.

Also, please note that dropping this disable_phy function
call won't break USB-C hotplug functionality.
(This line of code was firstly introduced associated with
a patch to fix USB-C hotplug issue)

[How]
Don't disable DP transmitter and its encoder before link
training happens, even if link loss is detected.

Signed-off-by: Zhan Liu <zhan.liu@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c

index 38b0f43..49f48d4 100644 (file)
@@ -2876,7 +2876,6 @@ bool dc_link_handle_hpd_rx_irq(struct dc_link *link, union hpd_irq_data *out_hpd
                        return false;
 
                previous_link_settings = link->cur_link_settings;
-               dp_disable_link_phy(link, pipe_ctx->stream->signal);
 
                perform_link_training_with_retries(&previous_link_settings,
                        true, LINK_TRAINING_ATTEMPTS,