drm/msm/dp: deinitialize mainlink if link training failed
authorKuogee Hsieh <khsieh@codeaurora.org>
Tue, 3 Nov 2020 20:49:00 +0000 (12:49 -0800)
committerRob Clark <robdclark@chromium.org>
Tue, 10 Nov 2020 20:39:31 +0000 (12:39 -0800)
commit231a04fcc6cb5b0e5f72c015d36462a17355f925
treee26b47fae6b6e305a12ed98ee0dc7e84c999cfa7
parent62671d2ef24bca1e2e1709a59a5bfb5c423cdc8e
drm/msm/dp: deinitialize mainlink if link training failed

DP compo phy have to be enable to start link training. When
link training failed phy need to be disabled so that next
link traning can be proceed smoothly at next plug in. This
patch de-initialize mainlink to disable phy if link training
failed. This prevent system crash due to
disp_cc_mdss_dp_link_intf_clk stuck at "off" state.  This patch
also perform checking power_on flag at dp_display_enable() and
dp_display_disable() to avoid crashing when unplug cable while
display is off.

Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/dp/dp_catalog.c
drivers/gpu/drm/msm/dp/dp_catalog.h
drivers/gpu/drm/msm/dp/dp_ctrl.c
drivers/gpu/drm/msm/dp/dp_display.c
drivers/gpu/drm/msm/dp/dp_panel.c