lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 21 Mar 2023 15:25:10 +0100
From:   Hans Verkuil <hverkuil@...all.nl>
To:     Christian Hewitt <christianshewitt@...il.com>,
        Neil Armstrong <neil.armstrong@...aro.org>,
        Mauro Carvalho Chehab <mchehab@...nel.org>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Kevin Hilman <khilman@...libre.com>,
        Jerome Brunet <jbrunet@...libre.com>,
        Martin Blumenstingl <martin.blumenstingl@...glemail.com>,
        linux-media@...r.kernel.org, linux-amlogic@...ts.infradead.org,
        linux-staging@...ts.linux.dev,
        linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Cc:     Maxime Jourdan <mjourdan@...libre.com>,
        Benjamin Roszak <benjamin545@...il.com>
Subject: Re: [PATCH v3 2/2] media: meson: vdec: add HEVC decode codec

On 14/03/2023 12:43, Christian Hewitt wrote:
> From: Maxime Jourdan <mjourdan@...libre.com>
> 
> Add initial HEVC codec for the Amlogic GXBB/GXL/GXM SoCs using
> the common "HEVC" decoder driver.
> 
> Signed-off-by: Maxime Jourdan <mjourdan@...libre.com>
> [codec alignment to upstream changes and frame handling improvements]
> Signed-off-by: Benjamin Roszak <benjamin545@...il.com>
> ---
>  drivers/staging/media/meson/vdec/Makefile     |    2 +-
>  drivers/staging/media/meson/vdec/codec_hevc.c | 1463 +++++++++++++++++
>  drivers/staging/media/meson/vdec/codec_hevc.h |   13 +
>  drivers/staging/media/meson/vdec/esparser.c   |    3 +-
>  drivers/staging/media/meson/vdec/hevc_regs.h  |    1 +
>  .../staging/media/meson/vdec/vdec_platform.c  |   37 +
>  6 files changed, 1517 insertions(+), 2 deletions(-)
>  create mode 100644 drivers/staging/media/meson/vdec/codec_hevc.c
>  create mode 100644 drivers/staging/media/meson/vdec/codec_hevc.h
> 

<snip>

> diff --git a/drivers/staging/media/meson/vdec/vdec_platform.c b/drivers/staging/media/meson/vdec/vdec_platform.c
> index 88c9d72e1c83..ea2aa0e8cf0b 100644
> --- a/drivers/staging/media/meson/vdec/vdec_platform.c
> +++ b/drivers/staging/media/meson/vdec/vdec_platform.c
> @@ -11,10 +11,23 @@
>  #include "vdec_hevc.h"
>  #include "codec_mpeg12.h"
>  #include "codec_h264.h"
> +#include "codec_hevc.h"
>  #include "codec_vp9.h"
>  
>  static const struct amvdec_format vdec_formats_gxbb[] = {
>  	{
> +		.pixfmt = V4L2_PIX_FMT_HEVC,
> +		.min_buffers = 4,
> +		.max_buffers = 24,
> +		.max_width = 3840,
> +		.max_height = 2160,
> +		.vdec_ops = &vdec_hevc_ops,
> +		.codec_ops = &codec_hevc_ops,
> +		.firmware_path = "meson/vdec/gxl_hevc.bin",
> +		.pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
> +		.flags = V4L2_FMT_FLAG_COMPRESSED |
> +			 V4L2_FMT_FLAG_DYN_RESOLUTION,
> +	}, {
>  		.pixfmt = V4L2_PIX_FMT_H264,
>  		.min_buffers = 2,
>  		.max_buffers = 24,
> @@ -64,6 +77,18 @@ static const struct amvdec_format vdec_formats_gxl[] = {
>  		.pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
>  		.flags = V4L2_FMT_FLAG_COMPRESSED |
>  			 V4L2_FMT_FLAG_DYN_RESOLUTION,
> +	}, {
> +		.pixfmt = V4L2_PIX_FMT_HEVC,
> +		.min_buffers = 4,
> +		.max_buffers = 24,
> +		.max_width = 3840,
> +		.max_height = 2160,
> +		.vdec_ops = &vdec_hevc_ops,
> +		.codec_ops = &codec_hevc_ops,
> +		.firmware_path = "meson/vdec/gxl_hevc.bin",
> +		.pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
> +		.flags = V4L2_FMT_FLAG_COMPRESSED |
> +			 V4L2_FMT_FLAG_DYN_RESOLUTION,
>  	}, {
>  		.pixfmt = V4L2_PIX_FMT_H264,
>  		.min_buffers = 2,
> @@ -114,6 +139,18 @@ static const struct amvdec_format vdec_formats_gxm[] = {
>  		.pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
>  		.flags = V4L2_FMT_FLAG_COMPRESSED |
>  			 V4L2_FMT_FLAG_DYN_RESOLUTION,
> +	}, {
> +		.pixfmt = V4L2_PIX_FMT_HEVC,
> +		.min_buffers = 4,
> +		.max_buffers = 24,
> +		.max_width = 3840,
> +		.max_height = 2160,
> +		.vdec_ops = &vdec_hevc_ops,
> +		.codec_ops = &codec_hevc_ops,
> +		.firmware_path = "meson/vdec/gxl_hevc.bin",

Hmm, I don't see this firmware in any debian package. Is it made available to
linux-firmware? This actually applies to *all* meson/vdec/ firmwares.

Regards,

	Hans

> +		.pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
> +		.flags = V4L2_FMT_FLAG_COMPRESSED |
> +			 V4L2_FMT_FLAG_DYN_RESOLUTION,
>  	}, {
>  		.pixfmt = V4L2_PIX_FMT_H264,
>  		.min_buffers = 2,

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ