On 02-08-21, 16:03, abhinavk@xxxxxxxxxxxxxx wrote: > On 2021-07-14 23:51, Vinod Koul wrote: > > Display Stream Compression (DSC) is one of the hw blocks in dpu, so add > > support by adding hw blocks for DSC > > > > Signed-off-by: Vinod Koul <vkoul@xxxxxxxxxx> > > --- > > Changes since RFC: > > - Drop unused enums > > > > drivers/gpu/drm/msm/Makefile | 1 + > > .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 13 ++ > > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.c | 221 ++++++++++++++++++ > > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.h | 77 ++++++ > > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h | 13 ++ > > 5 files changed, 325 insertions(+) > > create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.c > > create mode 100644 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.h > > > > diff --git a/drivers/gpu/drm/msm/Makefile b/drivers/gpu/drm/msm/Makefile > > index 610d630326bb..fd8fc57f1f58 100644 > > --- a/drivers/gpu/drm/msm/Makefile > > +++ b/drivers/gpu/drm/msm/Makefile > > @@ -61,6 +61,7 @@ msm-y := \ > > disp/dpu1/dpu_hw_blk.o \ > > disp/dpu1/dpu_hw_catalog.o \ > > disp/dpu1/dpu_hw_ctl.o \ > > + disp/dpu1/dpu_hw_dsc.o \ > > disp/dpu1/dpu_hw_interrupts.o \ > > disp/dpu1/dpu_hw_intf.o \ > > disp/dpu1/dpu_hw_lm.o \ > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h > > b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h > > index 4dfd8a20ad5c..b8b4dc36880c 100644 > > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h > > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h > > @@ -547,6 +547,16 @@ struct dpu_merge_3d_cfg { > > const struct dpu_merge_3d_sub_blks *sblk; > > }; > > > > +/** > > + * struct dpu_dsc_cfg - information of DSC blocks > > + * @id enum identifying this block > > + * @base register offset of this block > > + * @features bit mask identifying sub-blocks/features > > + */ > > +struct dpu_dsc_cfg { > > + DPU_HW_BLK_INFO; > > +}; > > + > > /** > > * struct dpu_intf_cfg - information of timing engine blocks > > * @id enum identifying this block > > @@ -748,6 +758,9 @@ struct dpu_mdss_cfg { > > u32 merge_3d_count; > > const struct dpu_merge_3d_cfg *merge_3d; > > > > + u32 dsc_count; > > + struct dpu_dsc_cfg *dsc; > > + > > u32 intf_count; > > const struct dpu_intf_cfg *intf; > > > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.c > > b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.c > > new file mode 100644 > > index 000000000000..e27e67bd42e8 > > --- /dev/null > > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.c > > @@ -0,0 +1,221 @@ > > +// SPDX-License-Identifier: GPL-2.0-only > > +/* > > + * Copyright (c) 2020, Linaro Limited > Copyright year needs an update : 2020-2021? Thanks for spotting, fixed up -- ~Vinod