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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux