Re: [PATCH v4 07/15] drm/msm/dpu: add dpu_hw_cdm abstraction for CDM block

From: Dmitry Baryshkov
Date: Tue Dec 12 2023 - 16:38:15 EST


On Tue, 12 Dec 2023 at 22:53, Abhinav Kumar <quic_abhinavk@xxxxxxxxxxx> wrote:
>
> CDM block comes with its own set of registers and operations
> which can be done. In-line with other hardware blocks, this
> change adds the dpu_hw_cdm abstraction for the CDM block.
>
> changes in v4:
> - used FIELD_PREP() for dpu_hw_cdm_setup_cdwn() operations
> - change to lowercase hex in dpu_hw_cdm_bind_pingpong_blk()
> - move disable assignment inside else in dpu_hw_cdm_bind_pingpong_blk()
>
> changes in v3:
> - fix commit text from sub-blk to blk for CDM
> - fix kbot issue for missing static for dpu_hw_cdm_enable()
> - fix kbot issue for incorrect documentation style
> - add more documentation for enums and struct in dpu_hw_cdm.h
> - drop "enable" parameter from bind_pingpong_blk() as we can
> just use PINGPONG_NONE for disable cases
> - drop unnecessary bit operation for zero value of cdm_cfg
>
> changes in v2:
> - replace bit magic with relevant defines
> - use drmm_kzalloc instead of kzalloc/free
> - some formatting fixes
> - inline _setup_cdm_ops()
> - protect bind_pingpong_blk with core_rev check
> - drop setup_csc_data() and setup_cdwn() ops as they
> are merged into enable()
>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Closes: https://lore.kernel.org/oe-kbuild-all/202312101815.B3ZH7Pfy-lkp@xxxxxxxxx/
> Signed-off-by: Abhinav Kumar <quic_abhinavk@xxxxxxxxxxx>
> ---
> drivers/gpu/drm/msm/Makefile | 1 +
> drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.c | 245 ++++++++++++++++++++
> drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.h | 142 ++++++++++++
> drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h | 1 +
> 4 files changed, 389 insertions(+)
> create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.c
> create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_cdm.h

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>

--
With best wishes
Dmitry