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

Hans Verkuil hverkuil-cisco at xs4all.nl
Thu Dec 2 01:44:43 PST 2021


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 at nxp.com>
> Signed-off-by: Shijie Qin <shijie.qin at nxp.com>
> Signed-off-by: Zhou Peng <eagle.zhou at nxp.com>
> Reported-by: kernel test robot <lkp at intel.com>
> ---
>  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



More information about the linux-arm-kernel mailing list