Re: [PATCH v5 10/12] drm/msm/dpu: Add Kaanapali SSPP sub-block support

From: yuanjiey

Date: Fri Jan 09 2026 - 00:55:48 EST


On Fri, Jan 09, 2026 at 05:25:26AM +0200, Dmitry Baryshkov wrote:
> On Fri, Jan 09, 2026 at 10:33:52AM +0800, yuanjiey wrote:
> > On Thu, Jan 08, 2026 at 03:46:18PM +0200, Dmitry Baryshkov wrote:
> > > On Thu, Jan 08, 2026 at 04:56:57PM +0800, yuanjie yang wrote:
> > > > From: Yuanjie Yang <yuanjie.yang@xxxxxxxxxxxxxxxx>
> > > >
> > > > Add support for Kaanapali platform SSPP sub-blocks, which
> > > > introduce structural changes including register additions,
> > > > removals, and relocations. Add the new common and rectangle
> > > > blocks, and update register definitions and handling to
> > > > ensure compatibility with DPU v13.0.
> > > >
> > > > Co-developed-by: Yongxing Mou <yongxing.mou@xxxxxxxxxxxxxxxx>
> > > > Signed-off-by: Yongxing Mou <yongxing.mou@xxxxxxxxxxxxxxxx>
> > > > Signed-off-by: Yuanjie Yang <yuanjie.yang@xxxxxxxxxxxxxxxx>
> > > > ---
> > > > drivers/gpu/drm/msm/Makefile | 1 +
> > > > .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 14 +
> > > > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 14 +-
> > > > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h | 4 +
> > > > .../gpu/drm/msm/disp/dpu1/dpu_hw_sspp_v13.c | 321 ++++++++++++++++++
> > > > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.c | 18 +
> > > > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.h | 3 +
> > > > 7 files changed, 371 insertions(+), 4 deletions(-)
> > > > create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp_v13.c
>
> >
> > > > + c->ops.setup_sourceaddress = dpu_hw_sspp_setup_sourceaddress_v13;
> > > > + c->ops.setup_solidfill = dpu_hw_sspp_setup_solidfill_v13;
> > > > + c->ops.setup_pe = dpu_hw_sspp_setup_pe_config_v13;
> > > > +
> > >
> > > > /* QOS_QOS_CTRL */
> > > > #define QOS_QOS_CTRL_DANGER_SAFE_EN BIT(0)
> > > > #define QOS_QOS_CTRL_DANGER_VBLANK_MASK GENMASK(5, 4)
> > > > @@ -475,6 +482,17 @@ void _dpu_hw_setup_qos_lut(struct dpu_hw_blk_reg_map *c, u32 offset,
> > > > cfg->danger_safe_en ? QOS_QOS_CTRL_DANGER_SAFE_EN : 0);
> > > > }
> > > >
> > > > +void _dpu_hw_setup_qos_lut_v13(struct dpu_hw_blk_reg_map *c,
> > > > + const struct dpu_hw_qos_cfg *cfg)
> > >
> > > Will it be shared with other blocks (DS, WB)?
> >
> > yes, _dpu_hw_setup_qos_lut_v13 will be used in WB, in function dpu_hw_wb_setup_qos_lut_v13.
> >
> > So maybe I should drop '_' rename _dpu_hw_setup_qos_lut_v13 --> dpu_hw_setup_qos_lut_v13 ?
>
> Yes, please. As you are going to resend the series, could you please
> also remove the function from the header?

Sure. But here a little confused.

Do you mean I should delete _dpu_hw_setup_qos_lut_v13 in header,
Or I should rename _dpu_hw_setup_qos_lut_v13 in header to dpu_hw_setup_qos_lut_v13.

_dpu_hw_setup_qos_lut_v13 is used in dpu_hw_sspp_v13.c and dpu_hw_wb.c, so I don't think
it can be removed from header.

Could you please help me clarify this comment?

Thanks,
Yuanjie

> --
> With best wishes
> Dmitry