From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Rob Clark <robdclark@gmail.com>, Sean Paul <sean@poorly.run>, Abhinav Kumar <quic_abhinavk@quicinc.com> Cc: freedreno@lists.freedesktop.org, linux-arm-msm@vger.kernel.org, Bjorn Andersson <andersson@kernel.org>, dri-devel@lists.freedesktop.org, Stephen Boyd <swboyd@chromium.org> Subject: [RFC PATCH v2 00/13] drm/msm/dpu: support virtual wide planes Date: Tue, 21 Mar 2023 04:18:08 +0300 [thread overview] Message-ID: <20230321011821.635977-1-dmitry.baryshkov@linaro.org> (raw) As promised in the basic wide planes support ([1]) here comes a series supporting 2*max_linewidth for all the planes. Note: this iteration features handling of rotation and reflection of the wide plane. However rot90 is still not tested: it is enabled on sc7280 and it only supports UBWC (tiled) framebuffers, it was quite low on my priority list. Note#2: to simplify the dpu_plane_virtual_assign_resources(), which already becomes big enough, I stripped support for sharing the SSPP across two planes (doubling amount of planes available to some of compositors/applications). I plan to get back to this topic once this series lands. Dependencies: msm-next + msm-fixes, [1], [2] [1] https://patchwork.freedesktop.org/series/99909/ [2] https://patchwork.freedesktop.org/series/113423/ Changes since v1: - Fixed build error due to me missing one of fixups, it was left uncommitted. - Implementated proper handling of wide plane rotation & reflection. Dmitry Baryshkov (13): drm/atomic-helper: split not-scaling part of drm_atomic_helper_check_plane_state drm/msm/dpu: take plane rotation into account for wide planes drm/msm/dpu: encoder: simplify debugfs handling drm/msm/dpu: remove unused fields from dpu_encoder_virt drm/msm/dpu: get rid of struct dpu_rm_requirements drm/msm/dpu: switch RM to use crtc_id rather than enc_id for allocation drm/msm/dpu: move resource allocation to CRTC drm/msm/dpu: fill CRTC resources in dpu_crtc.c drm/msm/dpu: move pstate->pipe initialization to dpu_plane_atomic_check drm/msm/dpu: add list of supported formats to the DPU caps drm/msm/dpu: add a field describing inline rotation to dpu_caps drm/msm/dpu: add support for virtual planes drm/msm/dpu: allow using two SSPP blocks for a single plane drivers/gpu/drm/drm_atomic_helper.c | 85 +++- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 162 ++++++- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 150 +----- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h | 8 + .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h | 3 - .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 27 ++ .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 6 + drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 120 +++-- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 14 +- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 428 ++++++++++++++++-- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.h | 33 +- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 243 +++++----- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h | 41 +- include/drm/drm_atomic_helper.h | 4 + 14 files changed, 959 insertions(+), 365 deletions(-) -- 2.30.2
WARNING: multiple messages have this Message-ID (diff)
From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Rob Clark <robdclark@gmail.com>, Sean Paul <sean@poorly.run>, Abhinav Kumar <quic_abhinavk@quicinc.com> Cc: Stephen Boyd <swboyd@chromium.org>, David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>, Bjorn Andersson <andersson@kernel.org>, linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org Subject: [RFC PATCH v2 00/13] drm/msm/dpu: support virtual wide planes Date: Tue, 21 Mar 2023 04:18:08 +0300 [thread overview] Message-ID: <20230321011821.635977-1-dmitry.baryshkov@linaro.org> (raw) As promised in the basic wide planes support ([1]) here comes a series supporting 2*max_linewidth for all the planes. Note: this iteration features handling of rotation and reflection of the wide plane. However rot90 is still not tested: it is enabled on sc7280 and it only supports UBWC (tiled) framebuffers, it was quite low on my priority list. Note#2: to simplify the dpu_plane_virtual_assign_resources(), which already becomes big enough, I stripped support for sharing the SSPP across two planes (doubling amount of planes available to some of compositors/applications). I plan to get back to this topic once this series lands. Dependencies: msm-next + msm-fixes, [1], [2] [1] https://patchwork.freedesktop.org/series/99909/ [2] https://patchwork.freedesktop.org/series/113423/ Changes since v1: - Fixed build error due to me missing one of fixups, it was left uncommitted. - Implementated proper handling of wide plane rotation & reflection. Dmitry Baryshkov (13): drm/atomic-helper: split not-scaling part of drm_atomic_helper_check_plane_state drm/msm/dpu: take plane rotation into account for wide planes drm/msm/dpu: encoder: simplify debugfs handling drm/msm/dpu: remove unused fields from dpu_encoder_virt drm/msm/dpu: get rid of struct dpu_rm_requirements drm/msm/dpu: switch RM to use crtc_id rather than enc_id for allocation drm/msm/dpu: move resource allocation to CRTC drm/msm/dpu: fill CRTC resources in dpu_crtc.c drm/msm/dpu: move pstate->pipe initialization to dpu_plane_atomic_check drm/msm/dpu: add list of supported formats to the DPU caps drm/msm/dpu: add a field describing inline rotation to dpu_caps drm/msm/dpu: add support for virtual planes drm/msm/dpu: allow using two SSPP blocks for a single plane drivers/gpu/drm/drm_atomic_helper.c | 85 +++- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 162 ++++++- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 150 +----- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h | 8 + .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h | 3 - .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 27 ++ .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h | 6 + drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 120 +++-- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 14 +- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 428 ++++++++++++++++-- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.h | 33 +- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 243 +++++----- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h | 41 +- include/drm/drm_atomic_helper.h | 4 + 14 files changed, 959 insertions(+), 365 deletions(-) -- 2.30.2
next reply other threads:[~2023-03-21 1:18 UTC|newest] Thread overview: 110+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-03-21 1:18 Dmitry Baryshkov [this message] 2023-03-21 1:18 ` [RFC PATCH v2 00/13] drm/msm/dpu: support virtual wide planes Dmitry Baryshkov 2023-03-21 1:18 ` [RFC PATCH v2 01/13] drm/atomic-helper: split not-scaling part of drm_atomic_helper_check_plane_state Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-03-21 1:18 ` [RFC PATCH v2 02/13] drm/msm/dpu: take plane rotation into account for wide planes Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-05-12 22:12 ` Abhinav Kumar 2023-05-12 22:12 ` Abhinav Kumar 2023-05-14 17:01 ` Dmitry Baryshkov 2023-05-14 17:01 ` Dmitry Baryshkov 2023-05-15 18:45 ` Abhinav Kumar 2023-05-15 18:45 ` Abhinav Kumar 2023-05-15 19:12 ` Dmitry Baryshkov 2023-05-15 19:12 ` Dmitry Baryshkov 2023-05-15 19:32 ` Abhinav Kumar 2023-05-15 19:32 ` Abhinav Kumar 2023-03-21 1:18 ` [RFC PATCH v2 03/13] drm/msm/dpu: encoder: simplify debugfs handling Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-05-12 22:18 ` Abhinav Kumar 2023-05-12 22:18 ` Abhinav Kumar 2023-05-14 17:02 ` Dmitry Baryshkov 2023-05-14 17:02 ` Dmitry Baryshkov 2023-03-21 1:18 ` [RFC PATCH v2 04/13] drm/msm/dpu: remove unused fields from dpu_encoder_virt Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-06-06 20:25 ` [Freedreno] " Abhinav Kumar 2023-06-06 20:25 ` Abhinav Kumar 2023-06-06 20:29 ` Dmitry Baryshkov 2023-06-06 20:29 ` Dmitry Baryshkov 2023-06-06 20:36 ` Abhinav Kumar 2023-06-06 20:36 ` Abhinav Kumar 2023-03-21 1:18 ` [RFC PATCH v2 05/13] drm/msm/dpu: get rid of struct dpu_rm_requirements Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-05-12 22:39 ` Abhinav Kumar 2023-05-12 22:39 ` Abhinav Kumar 2023-05-14 17:06 ` Dmitry Baryshkov 2023-05-14 17:06 ` Dmitry Baryshkov 2023-05-17 23:53 ` Abhinav Kumar 2023-05-17 23:53 ` Abhinav Kumar 2023-05-18 23:19 ` Abhinav Kumar 2023-05-18 23:19 ` Abhinav Kumar 2023-03-21 1:18 ` [RFC PATCH v2 06/13] drm/msm/dpu: switch RM to use crtc_id rather than enc_id for allocation Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-05-18 23:46 ` Abhinav Kumar 2023-05-18 23:46 ` Abhinav Kumar 2023-05-19 1:50 ` Dmitry Baryshkov 2023-05-19 1:50 ` Dmitry Baryshkov 2023-05-22 22:22 ` [Freedreno] " Abhinav Kumar 2023-05-22 22:22 ` Abhinav Kumar 2023-05-23 7:25 ` Dmitry Baryshkov 2023-05-23 7:25 ` Dmitry Baryshkov 2023-03-21 1:18 ` [RFC PATCH v2 07/13] drm/msm/dpu: move resource allocation to CRTC Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-03-21 1:18 ` [RFC PATCH v2 08/13] drm/msm/dpu: fill CRTC resources in dpu_crtc.c Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-03-21 1:18 ` [RFC PATCH v2 09/13] drm/msm/dpu: move pstate->pipe initialization to dpu_plane_atomic_check Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-05-24 22:46 ` Abhinav Kumar 2023-05-24 22:46 ` Abhinav Kumar 2023-05-24 23:04 ` [Freedreno] " Abhinav Kumar 2023-05-24 23:04 ` Abhinav Kumar 2023-05-25 1:40 ` Dmitry Baryshkov 2023-05-25 1:40 ` Dmitry Baryshkov 2023-06-06 20:27 ` Abhinav Kumar 2023-06-06 20:27 ` Abhinav Kumar 2023-03-21 1:18 ` [RFC PATCH v2 10/13] drm/msm/dpu: add list of supported formats to the DPU caps Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-05-24 23:16 ` Abhinav Kumar 2023-05-24 23:16 ` Abhinav Kumar 2023-05-25 1:47 ` Dmitry Baryshkov 2023-05-25 1:47 ` Dmitry Baryshkov 2023-06-06 21:14 ` Abhinav Kumar 2023-06-06 21:14 ` Abhinav Kumar 2023-06-06 21:29 ` Dmitry Baryshkov 2023-06-06 21:29 ` Dmitry Baryshkov 2023-06-06 21:47 ` Abhinav Kumar 2023-06-06 21:47 ` Abhinav Kumar 2023-06-06 21:52 ` Dmitry Baryshkov 2023-06-06 21:52 ` Dmitry Baryshkov 2023-06-06 22:47 ` Abhinav Kumar 2023-06-06 22:47 ` Abhinav Kumar 2023-06-06 22:50 ` Dmitry Baryshkov 2023-06-06 22:50 ` Dmitry Baryshkov 2023-06-06 22:57 ` [Freedreno] " Abhinav Kumar 2023-06-06 22:57 ` Abhinav Kumar 2023-06-06 22:59 ` Dmitry Baryshkov 2023-06-06 22:59 ` Dmitry Baryshkov 2023-06-06 23:14 ` Abhinav Kumar 2023-06-06 23:14 ` Abhinav Kumar 2023-06-06 23:21 ` Dmitry Baryshkov 2023-06-06 23:21 ` Dmitry Baryshkov 2023-06-07 1:12 ` Abhinav Kumar 2023-06-07 1:12 ` Abhinav Kumar 2023-03-21 1:18 ` [RFC PATCH v2 11/13] drm/msm/dpu: add a field describing inline rotation to dpu_caps Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-05-24 23:20 ` Abhinav Kumar 2023-05-24 23:20 ` Abhinav Kumar 2023-05-25 1:47 ` Dmitry Baryshkov 2023-05-25 1:47 ` Dmitry Baryshkov 2023-03-21 1:18 ` [RFC PATCH v2 12/13] drm/msm/dpu: add support for virtual planes Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov 2023-06-07 21:05 ` Abhinav Kumar 2023-06-07 21:05 ` Abhinav Kumar 2023-06-07 21:56 ` Dmitry Baryshkov 2023-06-07 21:56 ` Dmitry Baryshkov 2023-06-08 19:51 ` Abhinav Kumar 2023-06-08 19:51 ` Abhinav Kumar 2023-06-10 0:00 ` Abhinav Kumar 2023-06-10 0:00 ` Abhinav Kumar 2023-03-21 1:18 ` [RFC PATCH v2 13/13] drm/msm/dpu: allow using two SSPP blocks for a single plane Dmitry Baryshkov 2023-03-21 1:18 ` Dmitry Baryshkov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20230321011821.635977-1-dmitry.baryshkov@linaro.org \ --to=dmitry.baryshkov@linaro.org \ --cc=andersson@kernel.org \ --cc=dri-devel@lists.freedesktop.org \ --cc=freedreno@lists.freedesktop.org \ --cc=linux-arm-msm@vger.kernel.org \ --cc=quic_abhinavk@quicinc.com \ --cc=robdclark@gmail.com \ --cc=sean@poorly.run \ --cc=swboyd@chromium.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.