From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Dave Airlie <airlied@gmail.com>
Cc: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org,
Kieran Bingham <kieran.bingham@ideasonboard.com>
Subject: Re: [PATCH v3 0/8] R-Car DU: Support CRC calculation
Date: Thu, 03 May 2018 15:06:25 +0300 [thread overview]
Message-ID: <4411331.L07MOrSnxD@avalon> (raw)
In-Reply-To: <20180428205027.18025-1-laurent.pinchart+renesas@ideasonboard.com>
Hi Dave,
Ping ?
On Saturday, 28 April 2018 23:50:19 EEST Laurent Pinchart wrote:
> Hello,
>
> (Dave, there's a request for you below)
>
> This patch series adds support for CRC calculation to the rcar-du-drm
> driver.
>
> CRC calculation is supported starting at the Renesas R-Car Gen3 SoCs, as
> earlier versions don't have the necessary hardware. On Gen3 SoCs, the CRC is
> computed by the DISCOM module part of the VSP-D and VSP-DL.
>
> The DISCOM is interfaced to the VSP through the UIF glue and appears as a
> VSP entity with a sink pad and a source pad.
>
> The series starts with a switch to SPDX license headers in patch 1/8,
> prompted by a checkpatch.pl warning for a later patch that complained about
> missing SPDX license headers. It then continues with cleanup and
> refactoring. Patches 2/8 and 3/8 prepare for DISCOM and UIF support by
> extending generic code to make it usable for the UIF. Patch 4/8 documents a
> structure that will receive new fields.
>
> Patch 5/8 then extends the API exposed by the VSP driver to the DU driver to
> support CRC computation configuration and reporting. The patch
> unfortunately needs to touch both the VSP and DU drivers, so the whole
> series will need to be merged through a single tree.
>
> Patch 5/8 adds support for the DISCOM and UIF in the VSP driver, patch 7/8
> integrates it in the DRM pipeline, and patch 8/8 finally implements the CRC
> API in the DU driver to expose CRC computation to userspace.
>
> The hardware supports computing the CRC at any arbitrary point in the
> pipeline on a configurable window of the frame. This patch series supports
> CRC computation on input planes or pipeline output, but on the full frame
> only. Support for CRC window configuration can be added later if needed but
> will require extending the userspace API, as the DRM/KMS CRC API doesn't
> support this feature.
>
> Compared to v1, the CRC source names for plane inputs are now constructed
> from plane IDs instead of plane indices. This allows userspace to match CRC
> sources with planes.
>
> Compared to v2, various small issues reported by reviewers have been fixed.
> I believe the series to now be ready for upstream merge.
>
> Note that exposing the DISCOM and UIF though the V4L2 API isn't supported as
> the module is only found in VSP-D and VSP-DL instances that are not exposed
> through V4L2. It is possible to expose those instances through V4L2 with a
> small modification to the driver for testing purpose. If the need arises to
> test DISCOM and UIF with such an out-of-tree patch, support for CRC
> reporting through a V4L2 control can be added later without affecting how
> CRC is exposed through the DRM/KMS API.
>
> The patches are based on top of the "[PATCH v2 00/15] R-Car VSP1:
> Dynamically assign blend units to display pipelines" patch series, itself
> based on top of the Linux media master branch and scheduled for merge in
> v4.18. The new base caused heavy conflicts, requiring this series to be
> merged through the V4L2 tree.
>
> Dave, I have verified that this series merges cleanly with your drm-next and
> drm-fixes branches, with the drm-misc-next and drm-misc-fixes branches, and
> with the R-Car DU patches I would like to get merged in v4.18 through your
> tree. Could I get your ack to merge this through the V4L2 tree ?
>
> For convenience the patches are available at
>
> git://linuxtv.org/pinchartl/media.git vsp1-discom-v3-20180428
>
> The code has been tested through the kms-test-crc.py script part of the DU
> test suite available at
>
> git://git.ideasonboard.com/renesas/kms-tests.git discom
>
> Laurent Pinchart (8):
> v4l: vsp1: Use SPDX license headers
> v4l: vsp1: Share the CLU, LIF and LUT set_fmt pad operation code
> v4l: vsp1: Reset the crop and compose rectangles in the set_fmt helper
> v4l: vsp1: Document the vsp1_du_atomic_config structure
> v4l: vsp1: Extend the DU API to support CRC computation
> v4l: vsp1: Add support for the DISCOM entity
> v4l: vsp1: Integrate DISCOM in display pipeline
> drm: rcar-du: Add support for CRC computation
>
> drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 156 ++++++++++++++++-
> drivers/gpu/drm/rcar-du/rcar_du_crtc.h | 15 ++
> drivers/gpu/drm/rcar-du/rcar_du_vsp.c | 12 +-
> drivers/media/platform/vsp1/Makefile | 2 +-
> drivers/media/platform/vsp1/vsp1.h | 10 +-
> drivers/media/platform/vsp1/vsp1_brx.c | 6 +-
> drivers/media/platform/vsp1/vsp1_brx.h | 6 +-
> drivers/media/platform/vsp1/vsp1_clu.c | 71 ++------
> drivers/media/platform/vsp1/vsp1_clu.h | 6 +-
> drivers/media/platform/vsp1/vsp1_dl.c | 8 +-
> drivers/media/platform/vsp1/vsp1_dl.h | 6 +-
> drivers/media/platform/vsp1/vsp1_drm.c | 127 ++++++++++++--
> drivers/media/platform/vsp1/vsp1_drm.h | 15 +-
> drivers/media/platform/vsp1/vsp1_drv.c | 26 ++-
> drivers/media/platform/vsp1/vsp1_entity.c | 103 +++++++++++-
> drivers/media/platform/vsp1/vsp1_entity.h | 13 +-
> drivers/media/platform/vsp1/vsp1_hgo.c | 6 +-
> drivers/media/platform/vsp1/vsp1_hgo.h | 6 +-
> drivers/media/platform/vsp1/vsp1_hgt.c | 6 +-
> drivers/media/platform/vsp1/vsp1_hgt.h | 6 +-
> drivers/media/platform/vsp1/vsp1_histo.c | 65 +------
> drivers/media/platform/vsp1/vsp1_histo.h | 6 +-
> drivers/media/platform/vsp1/vsp1_hsit.c | 6 +-
> drivers/media/platform/vsp1/vsp1_hsit.h | 6 +-
> drivers/media/platform/vsp1/vsp1_lif.c | 71 ++------
> drivers/media/platform/vsp1/vsp1_lif.h | 6 +-
> drivers/media/platform/vsp1/vsp1_lut.c | 71 ++------
> drivers/media/platform/vsp1/vsp1_lut.h | 6 +-
> drivers/media/platform/vsp1/vsp1_pipe.c | 6 +-
> drivers/media/platform/vsp1/vsp1_pipe.h | 6 +-
> drivers/media/platform/vsp1/vsp1_regs.h | 46 ++++-
> drivers/media/platform/vsp1/vsp1_rpf.c | 6 +-
> drivers/media/platform/vsp1/vsp1_rwpf.c | 6 +-
> drivers/media/platform/vsp1/vsp1_rwpf.h | 6 +-
> drivers/media/platform/vsp1/vsp1_sru.c | 6 +-
> drivers/media/platform/vsp1/vsp1_sru.h | 6 +-
> drivers/media/platform/vsp1/vsp1_uds.c | 6 +-
> drivers/media/platform/vsp1/vsp1_uds.h | 6 +-
> drivers/media/platform/vsp1/vsp1_uif.c | 271 +++++++++++++++++++++++++++
> drivers/media/platform/vsp1/vsp1_uif.h | 32 ++++
> drivers/media/platform/vsp1/vsp1_video.c | 6 +-
> drivers/media/platform/vsp1/vsp1_video.h | 6 +-
> drivers/media/platform/vsp1/vsp1_wpf.c | 6 +-
> include/media/vsp1.h | 45 ++++-
> 44 files changed, 892 insertions(+), 417 deletions(-)
> create mode 100644 drivers/media/platform/vsp1/vsp1_uif.c
> create mode 100644 drivers/media/platform/vsp1/vsp1_uif.h
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2018-05-03 12:06 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-28 20:50 [PATCH v3 0/8] R-Car DU: Support CRC calculation Laurent Pinchart
2018-04-28 20:50 ` [PATCH v3 1/8] v4l: vsp1: Use SPDX license headers Laurent Pinchart
2018-04-28 20:50 ` [PATCH v3 2/8] v4l: vsp1: Share the CLU, LIF and LUT set_fmt pad operation code Laurent Pinchart
2018-04-28 20:50 ` [PATCH v3 3/8] v4l: vsp1: Reset the crop and compose rectangles in the set_fmt helper Laurent Pinchart
2018-04-28 20:50 ` [PATCH v3 4/8] v4l: vsp1: Document the vsp1_du_atomic_config structure Laurent Pinchart
2018-04-28 20:50 ` [PATCH v3 5/8] v4l: vsp1: Extend the DU API to support CRC computation Laurent Pinchart
2018-05-02 7:20 ` jacopo mondi
2018-04-28 20:50 ` [PATCH v3 6/8] v4l: vsp1: Add support for the DISCOM entity Laurent Pinchart
2018-04-28 20:50 ` [PATCH v3 7/8] v4l: vsp1: Integrate DISCOM in display pipeline Laurent Pinchart
2018-05-02 7:22 ` jacopo mondi
2018-04-28 20:50 ` [PATCH v3 8/8] drm: rcar-du: Add support for CRC computation Laurent Pinchart
2018-05-03 12:06 ` Laurent Pinchart [this message]
2018-05-03 13:45 ` [PATCH v3 0/8] R-Car DU: Support CRC calculation Daniel Vetter
2018-05-04 0:02 ` Dave Airlie
2018-05-05 14:06 ` Laurent Pinchart
2018-05-05 15:05 ` Mauro Carvalho Chehab
2018-05-06 12:48 ` 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=4411331.L07MOrSnxD@avalon \
--to=laurent.pinchart@ideasonboard.com \
--cc=airlied@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox