Hi Dmitry
I have reviewed the series , some patches completely , some of them especially the plane to sspp mapping is something i still need to check.
But I had one question on the design.
I thought we were going to have a boot param to control whether driver will internally use both rectangles for the layer so that in the future if compositors can do this splitting, we can use that instead of driver doing it ( keep boot param disabled ? ).
Thanks
Abhinav
On 2/9/2022 9:24 AM, Dmitry Baryshkov wrote:
It took me a way longer to finish than I expected. And more patches that I initially hoped. This patchset brings in multirect usage to support using two SSPP rectangles for a single plane. Virtual planes support is omitted from this pull request, it will come later.
Dmitry Baryshkov (25): drm/msm/dpu: rip out master planes support drm/msm/dpu: do not limit the zpos property drm/msm/dpu: add support for SSPP allocation to RM drm/msm/dpu: move SSPP debugfs creation to dpu_kms.c drm/msm/dpu: move pipe_hw to dpu_plane_state drm/msm/dpu: inline dpu_plane_get_ctl_flush drm/msm/dpu: drop dpu_plane_pipe function drm/msm/dpu: get rid of cached flush_mask drm/msm/dpu: dpu_crtc_blend_setup: split mixer and ctl logic drm/msm/dpu: introduce struct dpu_sw_pipe drm/msm/dpu: use dpu_sw_pipe for dpu_hw_sspp callbacks drm/msm/dpu: inline _dpu_plane_set_scanout drm/msm/dpu: pass dpu_format to _dpu_hw_sspp_setup_scaler3() drm/msm/dpu: move stride programming to dpu_hw_sspp_setup_sourceaddress drm/msm/dpu: remove dpu_hw_fmt_layout from struct dpu_hw_pipe_cfg drm/msm/dpu: drop EAGAIN check from dpu_format_populate_layout drm/msm/dpu: drop src_split and multirect check from dpu_crtc_atomic_check drm/msm/dpu: move the rest of plane checks to dpu_plane_atomic_check() drm/msm/dpu: don't use unsupported blend stages drm/msm/dpu: add dpu_hw_pipe_cfg to dpu_plane_state drm/msm/dpu: simplify dpu_plane_validate_src() drm/msm/dpu: rewrite plane's QoS-related functions to take dpu_sw_pipe and dpu_format drm/msm/dpu: rework dpu_plane_atomic_check() and dpu_plane_sspp_atomic_update() drm/msm/dpu: populate SmartDMA features in hw catalog drm/msm/dpu: add support for wide planes
drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 355 +++----- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h | 1 - drivers/gpu/drm/msm/disp/dpu1/dpu_formats.c | 4 - .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 10 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.c | 78 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ctl.h | 35 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 136 +-- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h | 88 +- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 21 +- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 1 + drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 813 +++++++++--------- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.h | 42 +- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 81 ++ drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h | 6 + drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h | 19 +- 15 files changed, 827 insertions(+), 863 deletions(-)