Message ID | 20230211231259.1308718-1-dmitry.baryshkov@linaro.org |
---|---|
Headers | show |
Series | drm/msm/dpu: rework HW catalog | expand |
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 >
Hi Dmitry On 3/7/2023 10:02 AM, Dmitry Baryshkov wrote: > 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. > I will take a look at patches 14-50 by Friday or worst case early next week. This week, I plan to finish validating the wide planes on sc7280 and give my Tested-by, hence cant get to this before that. Thanks Abhinav >> >> 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 >> >