Currently, the DPU driver bases LM reservation off of the maximum supported width for the layer mixer and an arbitrary MAX_HDISPLAY_SPLIT. However, these limits are not hardware limits meaning that a single LM can support higher resolutions.
Switch to basing LM reservation off of PINGPONG and DSC encoder hardware limits. --- Changes in v2: - Dropped PP and DSC encoder width drop the catalog, they are now determined in the code by using the DPU programming - Corrected DSC encoder width for DPUs < 8.x (2048 vs 2560) - Link to v1: https://lore.kernel.org/r/[email protected] --- Jessica Zhang (3): drm/msm/dpu: Check mode against PINGPONG or DSC max width drm/msm/dpu: Filter writeback modes using writeback maxlinewidth drm/msm/dpu: Remove max_mixer_width from catalog .../drm/msm/disp/dpu1/catalog/dpu_10_0_sm8650.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_12_0_sm8750.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_12_2_glymur.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_1_14_msm8937.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_1_15_msm8917.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_1_16_msm8953.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_1_7_msm8996.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_3_0_msm8998.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_3_2_sdm660.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_3_3_sdm630.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_4_0_sdm845.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_0_sm8150.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_5_1_sc8180x.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_2_sm7150.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_3_sm6150.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_5_4_sm6125.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_0_sm8250.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_2_sc7180.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_3_sm6115.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_4_sm6350.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_6_5_qcm2290.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_6_9_sm6375.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_7_0_sm8350.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_7_2_sc7280.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h | 1 - .../gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_9_1_sar2130p.h | 1 - .../drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h | 1 - drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 44 ++++++++++++++++++---- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 9 ++++- drivers/gpu/drm/msm/disp/dpu1/dpu_writeback.c | 9 +---- 33 files changed, 45 insertions(+), 47 deletions(-) --- base-commit: 19eee9de953679506fd24a2db2613e165c6fe801 change-id: 20250401-max-mixer-width-9c3c02c48cb7 Best regards, -- With best wishes Dmitry
