[PATCH v16 03/13] media: amphion: add amphion vpu device driver
Hans Verkuil
hverkuil-cisco at xs4all.nl
Tue Feb 22 00:14:29 PST 2022
On 2/21/22 07:10, 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 formats,
> such as H.264, HEVC, and other formats.
>
> 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>
> Tested-by: Nicolas Dufresne <nicolas.dufresne at collabora.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 | 356 +++++++++++++++++++++
> drivers/media/platform/amphion/vpu_defs.h | 187 +++++++++++
> drivers/media/platform/amphion/vpu_drv.c | 260 +++++++++++++++
> drivers/media/platform/amphion/vpu_imx8q.c | 271 ++++++++++++++++
> drivers/media/platform/amphion/vpu_imx8q.h | 115 +++++++
> 9 files changed, 1231 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 30516dc0b70e..5423075730f8 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -662,6 +662,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
This must be a separate patch! The media subsystem doesn't maintain defconfig.
> diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig
> index 9fbdba0fd1e7..947ae16c73f5 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"
> + depends on ARCH_MXC || COMPILE_TEST
> + 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
This Kconfig entry is in the wrong place: this driver is a mem2mem driver, so
it should be in the following section (V4L_MEM2MEM_DRIVERS).
Regards,
Hans
More information about the linux-arm-kernel
mailing list