From 084a57842a1e4ba6a857b85df6db5dc24c673c87 Mon Sep 17 00:00:00 2001 From: Yashwanth Date: Wed, 16 Jun 2021 11:44:14 +0530 Subject: [PATCH] disp: msm: dsi: remove seamless dms flag during active changed During DSC to Non-DSC switch or viceversa, DMS flag is set which cannot be treated as seamless during active changed condition. Hence, DMS flag is removed if set during active changed condition. Change-Id: I5ebd33a339aea7d6fab297a4c57ad90eb7bd442c Signed-off-by: Yashwanth --- msm/dsi/dsi_drm.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/msm/dsi/dsi_drm.c b/msm/dsi/dsi_drm.c index f3f3248c33..d3ab18ee28 100644 --- a/msm/dsi/dsi_drm.c +++ b/msm/dsi/dsi_drm.c @@ -491,6 +491,14 @@ static bool dsi_bridge_mode_fixup(struct drm_bridge *bridge, return false; } + /* + * DMS Flag if set during active changed condition cannot be + * treated as seamless. Hence, removing DMS flag in such cases. + */ + if ((dsi_mode.dsi_mode_flags & DSI_MODE_FLAG_DMS) && + crtc_state->active_changed) + dsi_mode.dsi_mode_flags &= ~DSI_MODE_FLAG_DMS; + /* No DMS/VRR when drm pipeline is changing */ if (!drm_mode_equal(cur_mode, adjusted_mode) && (!(dsi_mode.dsi_mode_flags & DSI_MODE_FLAG_VRR)) &&