From d4a92b1b70422f7a67d28503d7beb3ed5fce9a7e Mon Sep 17 00:00:00 2001 From: Mykola Lysenko Date: Wed, 9 Dec 2015 19:34:30 +0800 Subject: [PATCH 0593/1110] drm/amd/dal: do not use MST sink for regular connector This fix is intention to block set mode on non-MST when MST branch was disconnected. It is temporary, proper fix based on sink refcounts will be applied Signed-off-by: Harry Wentland Acked-by: Harry Wentland --- drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm.c index 9bb8165..e68598f 100644 --- a/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/dal/amdgpu_dm/amdgpu_dm.c @@ -736,10 +736,18 @@ void amdgpu_dm_update_connector_after_detect( /* MST handled by drm_mst framework */ if (aconnector->mst_mgr.mst_state) return; + if (!dm_get_sink_from_link(dc_link, aconnector, &sink)) { return; } + /* + * TODO: temporary guard to look for proper fix + * if this sink is MST sink, we should not do anything + */ + if (sink && sink->sink_signal == SIGNAL_TYPE_DISPLAY_PORT_MST) + return; + if (aconnector->dc_sink == sink) { /* We got a DP short pulse (Link Loss, DP CTS, etc...). * Do nothing!! */ -- 2.7.4