According to KMS documentation, The driver must not release any shared
resources if active is set to false but enable still true.

Fixes: ccc862b957c6 ("drm/msm/dpu: Fix reservation failures in modeset")
Signed-off-by: Vinod Polimera <quic_vpoli...@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>
---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
index 758261e..c237003 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c
@@ -652,7 +652,7 @@ static int dpu_encoder_virt_atomic_check(
                if (drm_atomic_crtc_needs_modeset(crtc_state)) {
                        dpu_rm_release(global_state, drm_enc);
 
-                       if (!crtc_state->active_changed || crtc_state->active)
+                       if (!crtc_state->active_changed || crtc_state->enable)
                                ret = dpu_rm_reserve(&dpu_kms->rm, global_state,
                                                drm_enc, crtc_state, topology);
                }
-- 
2.7.4

Reply via email to