All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian Starkey <Brian.Starkey@arm.com>
To: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Cc: Liviu Dudau <Liviu.Dudau@arm.com>, nd <nd@arm.com>,
	"james qian wang (Arm Technology China)"
	<james.qian.wang@arm.com>,
	Kieran Bingham <kieran.bingham@ideasonboard.com>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH v5 00/19] R-Car DU display writeback support
Date: Fri, 22 Feb 2019 14:04:10 +0000	[thread overview]
Message-ID: <20190222140411.wlpe2pdmdzh7fjqr@DESKTOP-E1NTVVP.localdomain> (raw)
In-Reply-To: <20190221103212.28764-1-laurent.pinchart+renesas@ideasonboard.com>

Hi,

On Thu, Feb 21, 2019 at 12:31:53PM +0200, Laurent Pinchart wrote:
> Hello everybody,
> 
> This patch series implements display writeback support for the R-Car
> Gen3 platforms in the VSP1 and DU drivers.
> 
> Patches 01/19 to 11/19 prepare the VSP1 driver for writeback support
> with all the necessary plumbing, including extensions of the API between
> the VSP1 and DU drivers.
> 
> Compared to v4 the major change is the move from V4L2 to DRM writeback
> connectors for the userspace API. This has caused a few issues with
> writeback support to be uncovered, and they are addressed by patches
> 12/19 to 14/19. Patch 15/19 is an unrelated drive-by fix.
> 
> Patches 16/19 to 18/19 then perform refactoring of the DU driver, to
> finally add writeback support in patch 19/19.
> 
> The writeback pixel format is restricted to RGB, due to the VSP1
> outputting RGB to the display and lacking a separate colour space
> conversion unit for writeback. The resolution can be freely picked by
> will result in cropping or composing, not scaling.

I think this sentence about cropping doesn't match the implementation,
as you're checking the framebuffer size against the mode.

We want to enable scaling/composing on writeback (which our HW can
do). I thought we'd add WRITEBACK_X/Y/W/H properties to set the
destination buffer coordinates. One of our team is working on that
now.

We don't have cropping, but I thought that could be achieved by
exposing CRTC_X/Y/W/H on writeback connectors.

Thanks,
-Brian

> 
> Writeback requests are queued to the hardware on page flip (atomic
> flush), and complete at the next vblank. This means that a queued
> writeback buffer will not be processed until the next page flip, but
> once it starts being written to by the VSP, it will complete at the next
> vblank regardless of whether another page flip occurs at that time.
> 
> The code is based on a merge of the media master branch, the drm-next
> branch and the R-Car DT next branch. For convenience patches can be
> found at
> 
>         git://linuxtv.org/pinchartl/media.git v4l2/vsp1/writeback
> 
> Kieran Bingham (1):
>   Revert "[media] v4l: vsp1: Supply frames to the DU continuously"
> 
> Laurent Pinchart (18):
>   media: vsp1: wpf: Fix partition configuration for display pipelines
>   media: vsp1: Replace leftover occurrence of fragment with body
>   media: vsp1: Fix addresses of display-related registers for VSP-DL
>   media: vsp1: Refactor vsp1_video_complete_buffer() for later reuse
>   media: vsp1: Replace the display list internal flag with a flags field
>   media: vsp1: dl: Support one-shot entries in the display list
>   media: vsp1: wpf: Add writeback support
>   media: vsp1: drm: Split RPF format setting to separate function
>   media: vsp1: drm: Extend frame completion API to the DU driver
>   media: vsp1: drm: Implement writeback support
>   drm: writeback: Cleanup job ownership handling when queuing job
>   drm: writeback: Fix leak of writeback job
>   drm: writeback: Add job prepare and cleanup operations
>   drm/msm: Remove prototypes for non-existing functions
>   drm: rcar-du: Fix rcar_du_crtc structure documentation
>   drm: rcar-du: Store V4L2 fourcc in rcar_du_format_info structure
>   drm: rcar-du: vsp: Extract framebuffer (un)mapping to separate
>     functions
>   drm: rcar-du: Add writeback support for R-Car Gen3
> 
>  drivers/gpu/drm/arm/malidp_mw.c             |   3 +-
>  drivers/gpu/drm/drm_atomic_helper.c         |  11 ++
>  drivers/gpu/drm/drm_atomic_state_helper.c   |   4 +
>  drivers/gpu/drm/drm_atomic_uapi.c           |  31 +--
>  drivers/gpu/drm/drm_writeback.c             |  71 ++++++-
>  drivers/gpu/drm/msm/msm_drv.h               |   2 -
>  drivers/gpu/drm/rcar-du/Kconfig             |   4 +
>  drivers/gpu/drm/rcar-du/Makefile            |   3 +-
>  drivers/gpu/drm/rcar-du/rcar_du_crtc.h      |   9 +-
>  drivers/gpu/drm/rcar-du/rcar_du_kms.c       |  37 ++++
>  drivers/gpu/drm/rcar-du/rcar_du_kms.h       |   1 +
>  drivers/gpu/drm/rcar-du/rcar_du_vsp.c       | 121 ++++++------
>  drivers/gpu/drm/rcar-du/rcar_du_vsp.h       |  17 ++
>  drivers/gpu/drm/rcar-du/rcar_du_writeback.c | 203 ++++++++++++++++++++
>  drivers/gpu/drm/rcar-du/rcar_du_writeback.h |  39 ++++
>  drivers/gpu/drm/vc4/vc4_txp.c               |   2 +-
>  drivers/media/platform/vsp1/vsp1_dl.c       | 127 ++++++++++--
>  drivers/media/platform/vsp1/vsp1_dl.h       |   8 +-
>  drivers/media/platform/vsp1/vsp1_drm.c      |  92 ++++++---
>  drivers/media/platform/vsp1/vsp1_drm.h      |   2 +-
>  drivers/media/platform/vsp1/vsp1_drv.c      |  15 ++
>  drivers/media/platform/vsp1/vsp1_pipe.c     |   5 +
>  drivers/media/platform/vsp1/vsp1_pipe.h     |   1 +
>  drivers/media/platform/vsp1/vsp1_regs.h     |   6 +-
>  drivers/media/platform/vsp1/vsp1_rwpf.h     |   2 +
>  drivers/media/platform/vsp1/vsp1_video.c    |  49 +++--
>  drivers/media/platform/vsp1/vsp1_wpf.c      |  68 +++++--
>  include/drm/drm_modeset_helper_vtables.h    |   7 +
>  include/drm/drm_writeback.h                 |  30 ++-
>  include/media/vsp1.h                        |  19 +-
>  30 files changed, 790 insertions(+), 199 deletions(-)
>  create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_writeback.c
>  create mode 100644 drivers/gpu/drm/rcar-du/rcar_du_writeback.h
> 
> -- 
> Regards,
> 
> Laurent Pinchart
> 
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2019-02-22 14:04 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-21 10:31 [PATCH v5 00/19] R-Car DU display writeback support Laurent Pinchart
2019-02-21 10:31 ` [PATCH v5 01/19] Revert "[media] v4l: vsp1: Supply frames to the DU continuously" Laurent Pinchart
2019-02-21 13:16   ` Kieran Bingham
2019-02-21 10:31 ` [PATCH v5 02/19] media: vsp1: wpf: Fix partition configuration for display pipelines Laurent Pinchart
2019-02-21 10:31 ` [PATCH v5 03/19] media: vsp1: Replace leftover occurrence of fragment with body Laurent Pinchart
2019-02-21 10:31 ` [PATCH v5 04/19] media: vsp1: Fix addresses of display-related registers for VSP-DL Laurent Pinchart
2019-02-21 10:31 ` [PATCH v5 05/19] media: vsp1: Refactor vsp1_video_complete_buffer() for later reuse Laurent Pinchart
2019-02-21 10:31 ` [PATCH v5 06/19] media: vsp1: Replace the display list internal flag with a flags field Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 07/19] media: vsp1: dl: Support one-shot entries in the display list Laurent Pinchart
2019-02-21 13:16   ` Kieran Bingham
2019-02-22 14:30   ` Brian Starkey
2019-02-22 14:46     ` Laurent Pinchart
2019-02-22 15:06       ` Brian Starkey
2019-03-05 23:14         ` Laurent Pinchart
2019-03-06 11:05           ` Brian Starkey
2019-03-06 18:22             ` Laurent Pinchart
2019-03-07 12:28               ` Brian Starkey
2019-03-08 12:24                 ` Laurent Pinchart
2019-03-18 16:59                   ` Brian Starkey
2019-03-19 10:00                     ` Laurent Pinchart
2019-03-06 14:20           ` Liviu Dudau
2019-03-06 18:01             ` Laurent Pinchart
2019-03-07 11:52               ` Liviu Dudau
2019-03-07 13:48                 ` Laurent Pinchart
2019-03-07 16:31                   ` Liviu Dudau
2019-03-08 12:46                     ` Laurent Pinchart
2019-03-08 15:02                       ` Liviu Dudau
2019-03-13  0:56                         ` Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 08/19] media: vsp1: wpf: Add writeback support Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 09/19] media: vsp1: drm: Split RPF format setting to separate function Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 10/19] media: vsp1: drm: Extend frame completion API to the DU driver Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 11/19] media: vsp1: drm: Implement writeback support Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 12/19] drm: writeback: Cleanup job ownership handling when queuing job Laurent Pinchart
2019-02-21 10:42   ` Laurent Pinchart
2019-02-21 16:02     ` Brian Starkey
2019-02-21 21:56       ` Laurent Pinchart
2019-02-22 13:33         ` Brian Starkey
2019-02-21 16:40   ` Eric Anholt
2019-02-26 18:07   ` Liviu Dudau
2019-02-21 10:32 ` [PATCH v5 13/19] drm: writeback: Fix leak of writeback job Laurent Pinchart
2019-02-21 17:48   ` Brian Starkey
2019-02-26 18:10   ` Liviu Dudau
2019-02-21 10:32 ` [PATCH v5 14/19] drm: writeback: Add job prepare and cleanup operations Laurent Pinchart
2019-02-21 18:12   ` Brian Starkey
2019-02-21 22:12     ` Laurent Pinchart
2019-02-22 13:50       ` Brian Starkey
2019-02-22 14:49         ` Laurent Pinchart
2019-02-22 15:11           ` Brian Starkey
2019-02-26 18:39   ` Liviu Dudau
2019-02-27 12:38     ` Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 15/19] drm/msm: Remove prototypes for non-existing functions Laurent Pinchart
2019-02-21 10:39   ` Laurent Pinchart
2019-03-13  0:00     ` Laurent Pinchart
2020-12-16  2:54       ` Laurent Pinchart
2019-03-13  9:05     ` Kieran Bingham
2019-02-21 10:32 ` [PATCH v5 16/19] drm: rcar-du: Fix rcar_du_crtc structure documentation Laurent Pinchart
2019-03-11 22:57   ` Kieran Bingham
2019-03-12 15:24     ` Laurent Pinchart
2019-03-12 20:42       ` Kieran Bingham
2019-02-21 10:32 ` [PATCH v5 17/19] drm: rcar-du: Store V4L2 fourcc in rcar_du_format_info structure Laurent Pinchart
2019-03-11 23:20   ` Kieran Bingham
2019-02-21 10:32 ` [PATCH v5 18/19] drm: rcar-du: vsp: Extract framebuffer (un)mapping to separate functions Laurent Pinchart
2019-02-21 10:32 ` [PATCH v5 19/19] drm: rcar-du: Add writeback support for R-Car Gen3 Laurent Pinchart
2019-02-22 14:04 ` Brian Starkey [this message]
2019-02-22 14:47   ` [PATCH v5 00/19] R-Car DU display writeback support Laurent Pinchart

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=20190222140411.wlpe2pdmdzh7fjqr@DESKTOP-E1NTVVP.localdomain \
    --to=brian.starkey@arm.com \
    --cc=Liviu.Dudau@arm.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=james.qian.wang@arm.com \
    --cc=kieran.bingham@ideasonboard.com \
    --cc=laurent.pinchart+renesas@ideasonboard.com \
    --cc=nd@arm.com \
    /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.