lkml.org 
[lkml]   [2018]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH 0/9] Sunxi-Cedrus driver for the Allwinner Video Engine, using the V4L2 request API
    From
    Date
    On Fri, 2018-03-09 at 11:09 +0100, Paul Kocialkowski wrote:
    > This presents a newer version of the Sunxi-Cedrus driver, that
    > supports
    > the Video Engine found in most Allwinner SoCs, starting with the A10.

    I had to send this series in two parts (and tried to keep them under the
    original thread) after the mail server rejected one of the emails mid-
    series, causing git-send-email to stop. Sorry for the mess.

    > The first version of this driver[0] was originally written and
    > submitted
    > by Florent Revest using a previous version of the request API, that is
    > necessary to provide coherency between controls and the buffers they
    > apply
    > to. The driver was since adapted to use the latest version of the
    > request
    > API[1], as submitted by Alexandre Courbot. It is a hard requirement
    > for
    > this driver.
    >
    > This series also contains fixes for issues encountered with the
    > current
    > version of the request API. If accepted, these should eventually be
    > squashed into the request API series.
    >
    > The driver itself currently only supports MPEG2 and more codecs will
    > be
    > added to the driver eventually. The output frames provided by the
    > Video Engine are in a multi-planar 32x32-tiled YUV format, with a
    > plane
    > for luminance (Y) and a plane for chrominance (UV). A specific format
    > is
    > introduced in the V4L2 API to describe it.
    >
    > This implementation is based on the significant work that was
    > conducted
    > by various members of the linux-sunxi community for understanding and
    > documenting the Video Engine's innards.
    >
    > [0]: https://lkml.org/lkml/2016/8/25/246
    > [1]: https://lkml.org/lkml/2018/2/19/872
    >
    > Florent Revest (5):
    > v4l: Add sunxi Video Engine pixel format
    > v4l: Add MPEG2 low-level decoder API control
    > media: platform: Add Sunxi Cedrus decoder driver
    > sunxi-cedrus: Add device tree binding document
    > ARM: dts: sun5i: Use video-engine node
    >
    > Icenowy Zheng (1):
    > ARM: dts: sun8i: add video engine support for A33
    >
    > Paul Kocialkowski (2):
    > media: vim2m: Try to schedule a m2m device run on request submission
    > media: videobuf2-v4l2: Copy planes when needed in request qbuf
    >
    > Thomas van Kleef (1):
    > ARM: dts: sun7i: Add video engine support for the A20
    >
    > .../devicetree/bindings/media/sunxi-cedrus.txt | 44 ++
    > arch/arm/boot/dts/sun5i-a13.dtsi | 30 ++
    > arch/arm/boot/dts/sun7i-a20.dtsi | 47 ++
    > arch/arm/boot/dts/sun8i-a33.dtsi | 39 ++
    > drivers/media/common/videobuf2/videobuf2-v4l2.c | 19 +
    > drivers/media/platform/Kconfig | 14 +
    > drivers/media/platform/Makefile | 1 +
    > drivers/media/platform/sunxi-cedrus/Makefile | 4 +
    > drivers/media/platform/sunxi-cedrus/sunxi_cedrus.c | 313 ++++++++++++
    > .../platform/sunxi-cedrus/sunxi_cedrus_common.h | 106 ++++
    > .../media/platform/sunxi-cedrus/sunxi_cedrus_dec.c | 568
    > +++++++++++++++++++++
    > .../media/platform/sunxi-cedrus/sunxi_cedrus_dec.h | 33 ++
    > .../media/platform/sunxi-cedrus/sunxi_cedrus_hw.c | 185 +++++++
    > .../media/platform/sunxi-cedrus/sunxi_cedrus_hw.h | 36 ++
    > .../platform/sunxi-cedrus/sunxi_cedrus_mpeg2.c | 152 ++++++
    > .../platform/sunxi-cedrus/sunxi_cedrus_regs.h | 170 ++++++
    > drivers/media/platform/vim2m.c | 13 +-
    > drivers/media/v4l2-core/v4l2-ctrls.c | 15 +
    > drivers/media/v4l2-core/v4l2-ioctl.c | 1 +
    > include/uapi/linux/v4l2-controls.h | 26 +
    > include/uapi/linux/videodev2.h | 6 +
    > 21 files changed, 1821 insertions(+), 1 deletion(-)
    > create mode 100644 Documentation/devicetree/bindings/media/sunxi-
    > cedrus.txt
    > create mode 100644 drivers/media/platform/sunxi-cedrus/Makefile
    > create mode 100644 drivers/media/platform/sunxi-cedrus/sunxi_cedrus.c
    > create mode 100644 drivers/media/platform/sunxi-
    > cedrus/sunxi_cedrus_common.h
    > create mode 100644 drivers/media/platform/sunxi-
    > cedrus/sunxi_cedrus_dec.c
    > create mode 100644 drivers/media/platform/sunxi-
    > cedrus/sunxi_cedrus_dec.h
    > create mode 100644 drivers/media/platform/sunxi-
    > cedrus/sunxi_cedrus_hw.c
    > create mode 100644 drivers/media/platform/sunxi-
    > cedrus/sunxi_cedrus_hw.h
    > create mode 100644 drivers/media/platform/sunxi-
    > cedrus/sunxi_cedrus_mpeg2.c
    > create mode 100644 drivers/media/platform/sunxi-
    > cedrus/sunxi_cedrus_regs.h
    >
    --
    Paul Kocialkowski, Bootlin (formerly Free Electrons)
    Embedded Linux and kernel engineering
    https://bootlin.com[unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2018-03-09 11:20    [W:3.236 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site