From: Abhinav Kumar <[email protected]> HPD state machine assumes only one active stream. Fix it to account for both while marking the state of the hpd as disconnected.
Signed-off-by: Abhinav Kumar <[email protected]> Signed-off-by: Yongxing Mou <[email protected]> --- drivers/gpu/drm/msm/dp/dp_display.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c index 526389c718edccbac9b5a91e8dabf0d84ed1a8b0..75f2fd7c75eae81e5c843f8ae2d1ce12ad0cad7e 100644 --- a/drivers/gpu/drm/msm/dp/dp_display.c +++ b/drivers/gpu/drm/msm/dp/dp_display.c @@ -1824,7 +1824,7 @@ void msm_dp_display_atomic_post_disable_helper(struct msm_dp *dp, struct msm_dp_ msm_dp_display_disable(msm_dp_display, msm_dp_panel); hpd_state = msm_dp_display->hpd_state; - if (hpd_state == ST_DISCONNECT_PENDING) { + if (hpd_state == ST_DISCONNECT_PENDING && !msm_dp_display->active_stream_cnt) { /* completed disconnection */ msm_dp_display->hpd_state = ST_DISCONNECTED; } -- 2.34.1
