All of lore.kernel.org
 help / color / mirror / Atom feed
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


             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: link
Be 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.