]> git.baikalelectronics.ru Git - kernel.git/commit
media: platform: Add Cedrus VPU decoder driver
authorPaul Kocialkowski <paul.kocialkowski@bootlin.com>
Thu, 13 Sep 2018 14:51:55 +0000 (10:51 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Mon, 24 Sep 2018 14:47:10 +0000 (10:47 -0400)
commit940eb465680306ed605f81c53652fbebfa5fe3c4
tree28ad6401e53e50245d2161481d9f9f52c3787918
parent5426ed7c2657880aec58b592d9a27618ff7d4f0c
media: platform: Add Cedrus VPU decoder driver

This introduces the Cedrus VPU driver that supports the VPU found in
Allwinner SoCs, also known as Video Engine. It is implemented through
a V4L2 M2M decoder device and a media device (used for media requests).
So far, it only supports MPEG-2 decoding.

Since this VPU is stateless, synchronization with media requests is
required in order to ensure consistency between frame headers that
contain metadata about the frame to process and the raw slice data that
is used to generate the frame.

This driver was made possible thanks to the long-standing effort
carried out by the linux-sunxi community in the interest of reverse
engineering, documenting and implementing support for the Allwinner VPU.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
[hans.verkuil@cisco.com: dropped obsolete MEDIA_REQUEST_API from Kconfig]
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
18 files changed:
MAINTAINERS
drivers/staging/media/Kconfig
drivers/staging/media/Makefile
drivers/staging/media/sunxi/Kconfig [new file with mode: 0644]
drivers/staging/media/sunxi/Makefile [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/Kconfig [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/Makefile [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/TODO [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus.c [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus.h [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_dec.c [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_dec.h [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_hw.c [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_hw.h [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_mpeg2.c [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_regs.h [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_video.c [new file with mode: 0644]
drivers/staging/media/sunxi/cedrus/cedrus_video.h [new file with mode: 0644]