drm/msm/dpu: fix the condition for (not) applying QoS to CURSOR SSPP
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Thu, 18 May 2023 22:22:32 +0000 (01:22 +0300)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Sun, 4 Jun 2023 01:44:18 +0000 (04:44 +0300)
The function dpu_plane_sspp_update_pipe() contains code to skip enabling
the QoS and OT limitis for CURSOR pipes. However all DPU since sdm845
repurpose DMA SSPP for the cursor planes because they lack the real
CURSOR SSPP. Fix the condition to actually check that the plane is
CURSOR or not.

Reviewed-by: Jeykumar Sankaran <quic_jeykumar@quicinc.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/537911/
Link: https://lore.kernel.org/r/20230518222238.3815293-4-dmitry.baryshkov@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c

index 3b21032..b8ed724 100644 (file)
@@ -1126,7 +1126,8 @@ static void dpu_plane_sspp_update_pipe(struct drm_plane *plane,
        _dpu_plane_set_qos_lut(plane, pipe, fmt, pipe_cfg);
        _dpu_plane_set_danger_lut(plane, pipe, fmt);
 
-       if (plane->type != DRM_PLANE_TYPE_CURSOR) {
+       if (pipe->sspp->idx != SSPP_CURSOR0 &&
+           pipe->sspp->idx != SSPP_CURSOR1) {
                _dpu_plane_set_qos_ctrl(plane, pipe, true, DPU_PLANE_QOS_PANIC_CTRL);
                _dpu_plane_set_ot_limit(plane, pipe, pipe_cfg, frame_rate);
        }