Skip to content

Commit f20387d

Browse files
trettermchehab
authored andcommitted
media: allegro: add Allegro DVT video IP core driver
Add a V4L2 mem-to-mem driver for Allegro DVT video IP cores as found in the EV family of the Xilinx ZynqMP SoC. The Zynq UltraScale+ Device Technical Reference Manual uses the term VCU (Video Codec Unit) for the encoder, decoder and system integration block. This driver takes care of interacting with the MicroBlaze MCU that controls the actual IP cores. The IP cores and MCU are integrated in the FPGA. The xlnx_vcu driver is responsible for configuring the clocks and providing information about the codec configuration. The driver currently only supports the H.264 video encoder. Signed-off-by: Michael Tretter <m.tretter@pengutronix.de> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
1 parent 8df39e1 commit f20387d

File tree

7 files changed

+2885
-0
lines changed

7 files changed

+2885
-0
lines changed

MAINTAINERS

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -668,6 +668,13 @@ S: Maintained
668668
F: Documentation/i2c/busses/i2c-ali1563
669669
F: drivers/i2c/busses/i2c-ali1563.c
670670

671+
ALLEGRO DVT VIDEO IP CORE DRIVER
672+
M: Michael Tretter <m.tretter@pengutronix.de>
673+
R: Pengutronix Kernel Team <kernel@pengutronix.de>
674+
L: linux-media@vger.kernel.org
675+
S: Maintained
676+
F: drivers/staging/media/allegro-dvt/
677+
671678
ALLWINNER SECURITY SYSTEM
672679
M: Corentin Labbe <clabbe.montjoie@gmail.com>
673680
L: linux-crypto@vger.kernel.org

drivers/staging/media/Kconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ menuconfig STAGING_MEDIA
2020
if STAGING_MEDIA && MEDIA_SUPPORT
2121

2222
# Please keep them in alphabetic order
23+
source "drivers/staging/media/allegro-dvt/Kconfig"
24+
2325
source "drivers/staging/media/bcm2048/Kconfig"
2426

2527
source "drivers/staging/media/davinci_vpfe/Kconfig"

drivers/staging/media/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# SPDX-License-Identifier: GPL-2.0
2+
obj-$(CONFIG_VIDEO_ALLEGRO_DVT) += allegro-dvt/
23
obj-$(CONFIG_I2C_BCM2048) += bcm2048/
34
obj-$(CONFIG_VIDEO_IMX_MEDIA) += imx/
45
obj-$(CONFIG_VIDEO_DM365_VPFE) += davinci_vpfe/
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# SPDX-License-Identifier: GPL-2.0
2+
config VIDEO_ALLEGRO_DVT
3+
tristate "Allegro DVT Video IP Core"
4+
depends on VIDEO_DEV && VIDEO_V4L2
5+
depends on ARCH_ZYNQMP || COMPILE_TEST
6+
select V4L2_MEM2MEM_DEV
7+
select VIDEOBUF2_DMA_CONTIG
8+
select REGMAP
9+
select REGMAP_MMIO
10+
help
11+
Support for the encoder video IP core by Allegro DVT. This core is
12+
found for example on the Xilinx ZynqMP SoC in the EV family and is
13+
called VCU in the reference manual.
14+
15+
To compile this driver as a module, choose M here: the module
16+
will be called allegro.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# SPDX-License-Identifier: GPL-2.0
2+
allegro-objs := allegro-core.o
3+
4+
obj-$(CONFIG_VIDEO_ALLEGRO_DVT) += allegro.o
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
TODO:
2+
3+
- This driver is waiting for the stateful encoder spec and corresponding
4+
v4l2-compliance tests to be finalized.

0 commit comments

Comments
 (0)