]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/msm/dpu: skip watchdog timer programming through TOP on >= SM8450
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Fri, 13 Dec 2024 22:14:17 +0000 (00:14 +0200)
committerAbhinav Kumar <quic_abhinavk@quicinc.com>
Sat, 15 Feb 2025 19:46:42 +0000 (11:46 -0800)
The SM8450 and later chips have DPU_MDP_PERIPH_0_REMOVED feature bit
set, which means that those platforms have dropped some of the
registers, including the WD TIMER-related ones. Stop providing the
callback to program WD timer on those platforms.

Fixes: 100d7ef6995d ("drm/msm/dpu: add support for SM8450")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/628874/
Link: https://lore.kernel.org/r/20241214-dpu-drop-features-v1-1-988f0662cb7e@linaro.org
Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.c

index ad19330de61abd66762671cf253276695b303b32..562a3f4c5238a3ad6c8c1fa4d285b9165ada3cfd 100644 (file)
@@ -272,7 +272,7 @@ static void _setup_mdp_ops(struct dpu_hw_mdp_ops *ops,
 
        if (cap & BIT(DPU_MDP_VSYNC_SEL))
                ops->setup_vsync_source = dpu_hw_setup_vsync_sel;
-       else
+       else if (!(cap & BIT(DPU_MDP_PERIPH_0_REMOVED)))
                ops->setup_vsync_source = dpu_hw_setup_wd_timer;
 
        ops->get_safe_status = dpu_hw_get_safe_status;