[PATCH v2 00/50] drm/msm/dpu: rework HW catalog

Dmitry Baryshkov dmitry.baryshkov at linaro.org
Tue Mar 7 18:02:57 UTC 2023


On 12/02/2023 01:12, Dmitry Baryshkov wrote:
> This huge series attempts to restructure the DPU HW catalog into a
> manageable and reviewable data set. In order to ease review and testing
> I merged all the necessary fixes into this series. Also I cherry-picked
> & slightly fixed Konrad's patch adding size to the SSPP and INTF macros.
> 
> First 12 patches are catalog fixes, which can be probably picked into
> the msm-fixes.
> 
> Next 5 patches clean up the catalog a bit in order to make it more
> suitable for refactoring.
> 
> Then the next batch of 13 + 5 patches split the hw catalog entries into
> per-SoC files.
> 
> Next 8 patches rework catalog entries, mostly targeting QSEED cleanup
> and deduplication of data used by several platforms. At this moment only
> three pairs (out of 13 devices supported by DPU) are merged. However
> this part lays out the ground to ease adding support for new platforms,
> some of which use the same configuration as the existing platforms
> 
> Last batch of 7 patches renames existing macros to ease using them while
> adding support for new devices.
> 
> This pile of patches is submitted in a sinle batch to allow one to
> observe the final goal of the cleanup which otherwise might be hard to
> assess.
> 
> Changes since v1:
> - Picked up Konrad's patch
> - Picked up dependencies into the main series
> - Moved qseed3lite vs qseed4 patches into the fixes part
> - Fixed sm6115 in a similar manner.

Colleagues, could please take a look at this patchset? If nobody 
objects, I'd like to pick it after Rob merges Abhinav's msm-fixes pull 
request. Patches 1-13 are going through msm-fixes, patches 14-50 are 
pending.

> 
> Dmitry Baryshkov (49):
>    drm/msm/dpu: set DPU_MDP_PERIPH_0_REMOVED for sc8280xp
>    drm/msm/dpu: disable features unsupported by QCM2290
>    drm/msm/dpu: fix typo in in sm8550's dma_sblk_5
>    drm/msm/dpu: fix len of sc7180 ctl blocks
>    drm/msm/dpu: fix sm6115 and qcm2290 mixer width limits
>    drm/msm/dpu: correct sm8550 scaler
>    drm/msm/dpu: correct sc8280xp scaler
>    drm/msm/dpu: correct sm8450 scaler
>    drm/msm/dpu: correct sm8250 and sm8350 scaler
>    drm/msm/dpu: correct sm6115 scaler
>    drm/msm/dpu: drop DPU_DIM_LAYER from MIXER_MSM8998_MASK
>    drm/msm/dpu: fix clocks settings for msm8998 SSPP blocks
>    drm/msm/dpu: don't use DPU_CLK_CTRL_CURSORn for DMA SSPP clocks
>    drm/msm/dpu: constify DSC data structures
>    drm/msm/dpu: mark remaining pp data as const
>    drm/msm/dpu: move UBWC/memory configuration to separate struct
>    drm/msm/dpu: split SM8550 catalog entry to the separate file
>    drm/msm/dpu: split SM8450 catalog entry to the separate file
>    drm/msm/dpu: split SC8280XP catalog entry to the separate file
>    drm/msm/dpu: split SC7280 catalog entry to the separate file
>    drm/msm/dpu: split SM8350 catalog entry to the separate file
>    drm/msm/dpu: split SM6115 catalog entry to the separate file
>    drm/msm/dpu: split QCM2290 catalog entry to the separate file
>    drm/msm/dpu: split SC7180 catalog entry to the separate file
>    drm/msm/dpu: split SM8250 catalog entry to the separate file
>    drm/msm/dpu: split SC8180X catalog entry to the separate file
>    drm/msm/dpu: split SM8150 catalog entry to the separate file
>    drm/msm/dpu: split MSM8998 catalog entry to the separate file
>    drm/msm/dpu: split SDM845 catalog entry to the separate file
>    drm/msm/dpu: duplicate sdm845 catalog entries
>    drm/msm/dpu: duplicate sc7180 catalog entries
>    drm/msm/dpu: duplicate sm8150 catalog entries
>    drm/msm/dpu: duplicate sm8250 catalog entries
>    drm/msm/dpu: duplicate sm8350 catalog entries
>    drm/msm/dpu: use defined symbol for sc8280xp's maxwidth
>    drm/msm/dpu: enable DPU_CTL_SPLIT_DISPLAY for sc8280xp
>    drm/msm/dpu: enable DSPP_2/3 for LM_2/3 on sm8450
>    drm/msm/dpu: drop duplicate vig_sblk instances
>    drm/msm/dpu: enable DSPP on sc8180x
>    drm/msm/dpu: deduplicate sc8180x with sm8150
>    drm/msm/dpu: deduplicate sm6115 with qcm2290
>    drm/msm/dpu: deduplicate sc8280xp with sm8450
>    drm/msm/dpu: drop unused macros from hw catalog
>    drm/msm/dpu: inline IRQ_n_MASK defines
>    drm/msm/dpu: rename INTF_foo_MASK to contain major DPU version
>    drm/msm/dpu: rename CTL_foo_MASK to contain major DPU version
>    drm/msm/dpu: rename VIG and DMA_foo_MASK to contain major DPU version
>    drm/msm/dpu: rename MIXER_foo_MASK to contain major DPU version
>    drm/msm/dpu: rename MERGE_3D_foo_MASK to contain major DPU version
> 
> Konrad Dybcio (1):
>    drm/msm/dpu: Allow variable SSPP/INTF_BLK size
> 
>   .../msm/disp/dpu1/catalog/dpu_3_0_msm8998.h   |  211 ++
>   .../msm/disp/dpu1/catalog/dpu_4_0_sdm845.h    |  211 ++
>   .../msm/disp/dpu1/catalog/dpu_5_0_sm8150.h    |   97 +
>   .../msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h   |   91 +
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_lm6.h |  152 ++
>   .../msm/disp/dpu1/catalog/dpu_6_0_sm8250.h    |  244 ++
>   .../msm/disp/dpu1/catalog/dpu_6_2_sc7180.h    |  152 ++
>   .../msm/disp/dpu1/catalog/dpu_6_3_sm6115.h    |   92 +
>   .../msm/disp/dpu1/catalog/dpu_6_5_qcm2290.h   |   84 +
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_lm1.h |   54 +
>   .../msm/disp/dpu1/catalog/dpu_7_0_sm8350.h    |  226 ++
>   .../msm/disp/dpu1/catalog/dpu_7_2_sc7280.h    |  159 ++
>   .../msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h  |  117 +
>   .../msm/disp/dpu1/catalog/dpu_8_1_sm8450.h    |  123 +
>   .../gpu/drm/msm/disp/dpu1/catalog/dpu_8_lm6.h |  118 +
>   .../msm/disp/dpu1/catalog/dpu_9_0_sm8550.h    |  209 ++
>   .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c    | 2193 +----------------
>   .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h    |   39 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc.c    |    4 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c   |   18 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h   |    4 +-
>   21 files changed, 2434 insertions(+), 2164 deletions(-)
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_3_0_msm8998.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_4_0_sdm845.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_5_lm6.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_2_sc7180.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_3_sm6115.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_5_qcm2290.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_6_lm1.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_8_lm6.h
>   create mode 100644 drivers/gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h
> 

-- 
With best wishes
Dmitry



More information about the dri-devel mailing list