On 08/07/2022 00:20, Rob Clark wrote:
From: Rob Clark <robdcl...@chromium.org>

Fixes `kms_cursor_crc --run-subtest cursor-offscreen`.. when the cursor
moves offscreen the plane becomes non-visible, so we need to skip over
it in crtc atomic test and mixer setup.

Signed-off-by: Rob Clark <robdcl...@chromium.org>

Fixes: 25fdd5933e4c ("drm/msm: Add SDM845 DPU support")
Reviewed-by: Dmitry Baryshkov <dmitry.barysh...@linaro.org>

---
  drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 6 ++++++
  1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c 
b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
index 4dd0ce09ca74..4ba000951a90 100644
--- a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
+++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c
@@ -422,6 +422,9 @@ static void _dpu_crtc_blend_setup_mixer(struct drm_crtc 
*crtc,
                if (!state)
                        continue;
+ if (!state->visible)
+                       continue;
+
                pstate = to_dpu_plane_state(state);
                fb = state->fb;
@@ -1195,6 +1198,9 @@ static int dpu_crtc_atomic_check(struct drm_crtc *crtc,
                if (cnt >= DPU_STAGE_MAX * 4)
                        continue;
+ if (!pstate->visible)
+                       continue;
+
                pstates[cnt].dpu_pstate = dpu_pstate;
                pstates[cnt].drm_pstate = pstate;
                pstates[cnt].stage = pstate->normalized_zpos;


--
With best wishes
Dmitry

Reply via email to