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