Re: [PATCH 0/5] Add V4L2 driver for i.MX8 JPEG Encoder/Decoder

From: Hans Verkuil
Date: Wed Nov 06 2019 - 10:37:40 EST


Hi Mirela,

On 11/6/19 4:20 PM, Mirela Rabulea wrote:
> This patch set adds the V4L2 driver for i.MX8QXP/QM JPEG encoder/decoder
> and it's dependencies.
> The driver was tested on i.MX8QXP, using a unit test application and
> the v4l2-compliance tool, which passes when run on the encoder/decoder dev
> node, without any other parameters:
> v4l2-compliance -d /dev/video0
> v4l2-compliance -d /dev/video1
> v4l2-compliance SHA: 2ff1e6b3d67dbbdde212c8cf0de603f9f52078ed, 64 bits

That's too old. Always test with the latest version from the v4l-utils git
repo (git://linuxtv.org/v4l-utils.git). v4l2-compliance is continually
improved, so driver testing should always be done with the latest version.

For the JPEG encoder you can add the -s option to v4l2-compliance. Unfortunately,
the streaming tests for JPEG decoders in v4l2-compliance are not well supported
at the moment, so you can't use -s there.

Please provide the full output of the v4l2-compliance command as well, I'd
like to see the actual output.

Thank you very much for working on this, always nice to see new HW support.

Regards,

Hans

>
> The first patch "Add packed YUV444 24bpp pixel format" was already reviewed
> upstream, but not accepted because there was no driver using this format,
> until now. This pixel format, YUV444 24bpp, is now used and needed by the
> i.MX8QXP/QM JPEG encoder/decoder driver.
>
> Mirela Rabulea (5):
> media: v4l: Add packed YUV444 24bpp pixel format
> firmware: imx: scu-pd: Add power domains for imx-jpeg
> media: dt-bindings: Add bindings for i.MX8QXP/QM JPEG driver
> media: imx-jpeg: Add V4L2 driver for i.MX8 JPEG Encoder/Decoder
> arm64: dts: imx8qxp: Add jpeg encoder/decoder nodes
>
> .../devicetree/bindings/media/imx8-jpeg.yaml | 83 +
> Documentation/media/uapi/v4l/pixfmt-packed-yuv.rst | 37 +-
> arch/arm64/boot/dts/freescale/imx8qxp-mek.dts | 8 +
> arch/arm64/boot/dts/freescale/imx8qxp.dtsi | 37 +
> drivers/firmware/imx/scu-pd.c | 6 +
> drivers/media/platform/Kconfig | 2 +
> drivers/media/platform/Makefile | 1 +
> drivers/media/platform/imx-jpeg/Kconfig | 10 +
> drivers/media/platform/imx-jpeg/Makefile | 3 +
> drivers/media/platform/imx-jpeg/mxc-jpeg-hw.c | 168 ++
> drivers/media/platform/imx-jpeg/mxc-jpeg-hw.h | 140 ++
> drivers/media/platform/imx-jpeg/mxc-jpeg.c | 2266 ++++++++++++++++++++
> drivers/media/platform/imx-jpeg/mxc-jpeg.h | 187 ++
> drivers/media/v4l2-core/v4l2-ioctl.c | 1 +
> include/uapi/linux/videodev2.h | 1 +
> 15 files changed, 2949 insertions(+), 1 deletion(-)
> create mode 100644 Documentation/devicetree/bindings/media/imx8-jpeg.yaml
> create mode 100644 drivers/media/platform/imx-jpeg/Kconfig
> create mode 100644 drivers/media/platform/imx-jpeg/Makefile
> create mode 100644 drivers/media/platform/imx-jpeg/mxc-jpeg-hw.c
> create mode 100644 drivers/media/platform/imx-jpeg/mxc-jpeg-hw.h
> create mode 100644 drivers/media/platform/imx-jpeg/mxc-jpeg.c
> create mode 100644 drivers/media/platform/imx-jpeg/mxc-jpeg.h
>