]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/msm/dpu: Adjust CDM_MUX to support CWB PINGPONG
authorJessica Zhang <quic_jesszhan@quicinc.com>
Thu, 6 Mar 2025 03:16:51 +0000 (19:16 -0800)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Fri, 7 Mar 2025 04:02:13 +0000 (06:02 +0200)
Similar to WB_MUX, CDM_MUX also needs to be adjusted to support
dedicated CWB PINGPONGs

Signed-off-by: Jessica Zhang <quic_jesszhan@quicinc.com>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/641272/
Link: https://lore.kernel.org/r/20250305-cdm-cwb-mux-fix-v1-1-16148ca6e4d2@quicinc.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.c

index ae1534c49ae02fa92766b744390c2ad90b986f67..3f88c3641d4a3359b42f513fdeca609a4aa7126e 100644 (file)
@@ -214,7 +214,9 @@ static void dpu_hw_cdm_bind_pingpong_blk(struct dpu_hw_cdm *ctx, const enum dpu_
        mux_cfg = DPU_REG_READ(c, CDM_MUX);
        mux_cfg &= ~0xf;
 
-       if (pp)
+       if (pp >= PINGPONG_CWB_0)
+               mux_cfg |= 0xd;
+       else if (pp)
                mux_cfg |= (pp - PINGPONG_0) & 0x7;
        else
                mux_cfg |= 0xf;