All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
To: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org
Cc: Kieran Bingham <kieran.bingham@ideasonboard.com>
Subject: [PATCH v4 0/7] VSP1: Display writeback support
Date: Sun, 17 Feb 2019 04:48:45 +0200	[thread overview]
Message-ID: <20190217024852.23328-1-laurent.pinchart+renesas@ideasonboard.com> (raw)

Hello,

This patch series implements display writeback support for the R-Car
Gen3 platforms in the VSP1 driver.

DRM/KMS provides a writeback API through a special type of writeback
connectors. This series takes a different approach by exposing writeback
as a V4L2 device. While there is nothing fundamentally wrong with
writeback connectors, display for R-Car Gen3 platforms relies on the
VSP1 driver behind the scene, which already implements V4L2 support.
Enabling writeback through V4L2 is thus significantly easier in this
case.

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.

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 (2):
  Revert "[media] v4l: vsp1: Supply frames to the DU continuously"
  media: vsp1: Provide a writeback video device

Laurent Pinchart (5):
  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

 drivers/media/platform/vsp1/vsp1_dl.c    | 118 ++++++++++++--
 drivers/media/platform/vsp1/vsp1_dl.h    |   6 +-
 drivers/media/platform/vsp1/vsp1_drm.c   |  24 ++-
 drivers/media/platform/vsp1/vsp1_drv.c   |  17 +-
 drivers/media/platform/vsp1/vsp1_pipe.c  |   5 +
 drivers/media/platform/vsp1/vsp1_pipe.h  |   6 +
 drivers/media/platform/vsp1/vsp1_regs.h  |   6 +-
 drivers/media/platform/vsp1/vsp1_rwpf.h  |   2 +
 drivers/media/platform/vsp1/vsp1_video.c | 198 +++++++++++++++++++----
 drivers/media/platform/vsp1/vsp1_video.h |   6 +
 drivers/media/platform/vsp1/vsp1_wpf.c   |  65 ++++++--
 11 files changed, 378 insertions(+), 75 deletions(-)

-- 
Regards,

Laurent Pinchart


WARNING: multiple messages have this Message-ID (diff)
From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
To: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org
Cc: Kieran Bingham <kieran.bingham@ideasonboard.com>
Subject: [PATCH v4 0/7] VSP1: Display writeback support
Date: Sun, 17 Feb 2019 04:48:45 +0200	[thread overview]
Message-ID: <20190217024852.23328-1-laurent.pinchart+renesas@ideasonboard.com> (raw)

Hello,

This patch series implements display writeback support for the R-Car
Gen3 platforms in the VSP1 driver.

DRM/KMS provides a writeback API through a special type of writeback
connectors. This series takes a different approach by exposing writeback
as a V4L2 device. While there is nothing fundamentally wrong with
writeback connectors, display for R-Car Gen3 platforms relies on the
VSP1 driver behind the scene, which already implements V4L2 support.
Enabling writeback through V4L2 is thus significantly easier in this
case.

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.

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 (2):
  Revert "[media] v4l: vsp1: Supply frames to the DU continuously"
  media: vsp1: Provide a writeback video device

Laurent Pinchart (5):
  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

 drivers/media/platform/vsp1/vsp1_dl.c    | 118 ++++++++++++--
 drivers/media/platform/vsp1/vsp1_dl.h    |   6 +-
 drivers/media/platform/vsp1/vsp1_drm.c   |  24 ++-
 drivers/media/platform/vsp1/vsp1_drv.c   |  17 +-
 drivers/media/platform/vsp1/vsp1_pipe.c  |   5 +
 drivers/media/platform/vsp1/vsp1_pipe.h  |   6 +
 drivers/media/platform/vsp1/vsp1_regs.h  |   6 +-
 drivers/media/platform/vsp1/vsp1_rwpf.h  |   2 +
 drivers/media/platform/vsp1/vsp1_video.c | 198 +++++++++++++++++++----
 drivers/media/platform/vsp1/vsp1_video.h |   6 +
 drivers/media/platform/vsp1/vsp1_wpf.c   |  65 ++++++--
 11 files changed, 378 insertions(+), 75 deletions(-)

-- 
Regards,

Laurent Pinchart

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

             reply	other threads:[~2019-02-17  2:49 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-17  2:48 Laurent Pinchart [this message]
2019-02-17  2:48 ` [PATCH v4 0/7] VSP1: Display writeback support Laurent Pinchart
2019-02-17  2:48 ` [PATCH v4 1/7] Revert "[media] v4l: vsp1: Supply frames to the DU continuously" Laurent Pinchart
2019-02-17  2:48   ` Laurent Pinchart
2019-02-17  2:48 ` [PATCH v4 2/7] media: vsp1: wpf: Fix partition configuration for display pipelines Laurent Pinchart
2019-02-17  2:48   ` Laurent Pinchart
2019-02-17 20:16   ` Kieran Bingham
2019-02-17 20:16     ` Kieran Bingham
2019-02-18 23:24     ` Laurent Pinchart
2019-02-18 23:24       ` Laurent Pinchart
2019-02-17  2:48 ` [PATCH v4 3/7] media: vsp1: Replace leftover occurrence of fragment with body Laurent Pinchart
2019-02-17  2:48   ` Laurent Pinchart
2019-02-17 20:20   ` Kieran Bingham
2019-02-17 20:20     ` Kieran Bingham
2019-02-17  2:48 ` [PATCH v4 4/7] media: vsp1: Fix addresses of display-related registers for VSP-DL Laurent Pinchart
2019-02-17  2:48   ` Laurent Pinchart
2019-02-17 20:27   ` Kieran Bingham
2019-02-17 20:27     ` Kieran Bingham
2019-02-17  2:48 ` [PATCH v4 5/7] media: vsp1: Refactor vsp1_video_complete_buffer() for later reuse Laurent Pinchart
2019-02-17  2:48   ` Laurent Pinchart
2019-02-17 20:35   ` Kieran Bingham
2019-02-17 20:35     ` Kieran Bingham
2019-02-18 23:43     ` Laurent Pinchart
2019-02-18 23:43       ` Laurent Pinchart
2019-02-17  2:48 ` [PATCH v4 6/7] media: vsp1: Replace the display list internal flag with a flags field Laurent Pinchart
2019-02-17  2:48   ` Laurent Pinchart
2019-02-17 20:38   ` Kieran Bingham
2019-02-17 20:38     ` Kieran Bingham
2019-02-17  2:48 ` [PATCH v4 7/7] media: vsp1: Provide a writeback video device Laurent Pinchart
2019-02-17  2:48   ` Laurent Pinchart
2019-02-17 20:06   ` Kieran Bingham
2019-02-17 20:06     ` Kieran Bingham
2019-02-17 20:09     ` Kieran Bingham
2019-02-17 20:09       ` Kieran Bingham
2019-02-19  0:31     ` Laurent Pinchart
2019-02-19  0:31       ` Laurent Pinchart
2019-02-18 12:22 ` [PATCH v4 0/7] VSP1: Display writeback support Brian Starkey
2019-02-18 12:22   ` Brian Starkey
2019-02-18 23:04   ` Laurent Pinchart
2019-02-18 23:04     ` Laurent Pinchart
2019-02-21  8:23   ` Laurent Pinchart
2019-02-21  8:23     ` Laurent Pinchart
2019-02-21  9:50     ` Brian Starkey
2019-02-21  9:50       ` Brian Starkey
2019-02-21 10:02       ` Laurent Pinchart
2019-02-21 10:02         ` Laurent Pinchart
2019-02-21 12:19         ` Brian Starkey
2019-02-21 12:19           ` Brian Starkey
2019-02-21 12:23           ` Laurent Pinchart
2019-02-21 12:23             ` Laurent Pinchart
2019-02-21 13:44             ` Brian Starkey
2019-02-21 13:44               ` Brian Starkey
2019-02-21 23:12               ` Laurent Pinchart
2019-02-21 23:12                 ` Laurent Pinchart
2019-02-21 14:15           ` Daniel Vetter
2019-02-21 14:15             ` Daniel Vetter

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=20190217024852.23328-1-laurent.pinchart+renesas@ideasonboard.com \
    --to=laurent.pinchart+renesas@ideasonboard.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=kieran.bingham@ideasonboard.com \
    --cc=linux-media@vger.kernel.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.