Re: [PATCH v13 03/13] media: amphion: add amphion vpu device driver

From: Hans Verkuil
Date: Thu Dec 02 2021 - 04:44:56 EST


On 30/11/2021 10:48, Ming Qian wrote:
> The amphion vpu codec ip contains encoder and decoder.
> Windsor is the encoder, it supports to encode H.264.
> Malone is the decoder, it features a powerful
> video processing unit able to decode many foramts,

foramts -> formats

> such as H.264, HEVC, and other foramts.

ditto

>
> This Driver is for this IP that is based on the v4l2 mem2mem framework.
>
> Supported SoCs are: IMX8QXP, IMX8QM
>
> Signed-off-by: Ming Qian <ming.qian@xxxxxxx>
> Signed-off-by: Shijie Qin <shijie.qin@xxxxxxx>
> Signed-off-by: Zhou Peng <eagle.zhou@xxxxxxx>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> ---
> arch/arm64/configs/defconfig | 1 +
> drivers/media/platform/Kconfig | 19 ++
> drivers/media/platform/Makefile | 2 +
> drivers/media/platform/amphion/Makefile | 20 ++
> drivers/media/platform/amphion/vpu.h | 357 +++++++++++++++++++++
> drivers/media/platform/amphion/vpu_defs.h | 186 +++++++++++
> drivers/media/platform/amphion/vpu_drv.c | 265 +++++++++++++++
> drivers/media/platform/amphion/vpu_imx8q.c | 271 ++++++++++++++++
> drivers/media/platform/amphion/vpu_imx8q.h | 116 +++++++
> 9 files changed, 1237 insertions(+)
> create mode 100644 drivers/media/platform/amphion/Makefile
> create mode 100644 drivers/media/platform/amphion/vpu.h
> create mode 100644 drivers/media/platform/amphion/vpu_defs.h
> create mode 100644 drivers/media/platform/amphion/vpu_drv.c
> create mode 100644 drivers/media/platform/amphion/vpu_imx8q.c
> create mode 100644 drivers/media/platform/amphion/vpu_imx8q.h
>
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index f2e2b9bdd702..cc3633112f3f 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -657,6 +657,7 @@ CONFIG_V4L_PLATFORM_DRIVERS=y
> CONFIG_VIDEO_RCAR_CSI2=m
> CONFIG_VIDEO_RCAR_VIN=m
> CONFIG_VIDEO_SUN6I_CSI=m
> +CONFIG_VIDEO_AMPHION_VPU=m
> CONFIG_V4L_MEM2MEM_DRIVERS=y
> CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m
> CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
> diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig
> index 9fbdba0fd1e7..7d4a8cd52a9e 100644
> --- a/drivers/media/platform/Kconfig
> +++ b/drivers/media/platform/Kconfig
> @@ -216,6 +216,25 @@ config VIDEO_RCAR_ISP
> To compile this driver as a module, choose M here: the
> module will be called rcar-isp.
>
> +config VIDEO_AMPHION_VPU
> + tristate "Amphion VPU(Video Processing Unit) Codec IP"

Add space before (

> + depends on ARCH_MXC

Add: || COMPILE_TEST

It should always be possible to compile test drivers, even on other architectures.

> + depends on MEDIA_SUPPORT
> + depends on VIDEO_DEV
> + depends on VIDEO_V4L2
> + select MEDIA_CONTROLLER
> + select V4L2_MEM2MEM_DEV
> + select VIDEOBUF2_DMA_CONTIG
> + select VIDEOBUF2_VMALLOC
> + help
> + Amphion VPU Codec IP contains two parts: Windsor and Malone.
> + Windsor is encoder that supports H.264, and Malone is decoder
> + that supports H.264, HEVC, and other video formats.
> + This is a V4L2 driver for NXP MXC 8Q video accelerator hardware.
> + It accelerates encoding and decoding operations on
> + various NXP SoCs.
> + To compile this driver as a module choose m here.
> +
> endif # V4L_PLATFORM_DRIVERS
>
> menuconfig V4L_MEM2MEM_DRIVERS

Regards,

Hans