mbox series

[v4,0/5] NVIDIA Tegra20 video decoder driver

Message ID cover.1508448293.git.digetx@gmail.com
Headers show
Series NVIDIA Tegra20 video decoder driver | expand

Message

Dmitry Osipenko Oct. 19, 2017, 9:34 p.m. UTC
VDE driver provides accelerated video decoding to NVIDIA Tegra SoC's,
it is a result of reverse-engineering efforts. Driver has been tested on
Toshiba AC100 and Acer A500, it should work on any Tegra20 device.

In userspace this driver is utilized by libvdpau-tegra [0] that implements
VDPAU interface, so any video player that supports VDPAU can provide
accelerated video decoding on Tegra20 on Linux.

[0] https://github.com/grate-driver/libvdpau-tegra

Change log:
v4:
	- Added mmio-sram "IRAM DT node" patch from Vladimir Zapolskiy to
	  the series, I modified it to cover all Tegra's and not only Tegra20
	- Utilized genalloc for the reservation of IRAM region as per
	  Vladimir's suggestion, VDE driver now selects SRAM driver in Kconfig
	- Added defconfig patch to the series
	- Described VDE registers in DT per HW unit, excluding BSE-A / UCQ
	  and holes between the units
	- Extended DT compatibility property with Tegra30/114/124/132 in the
	  binding doc.
	- Removed BSE-A interrupt from the DT binding because it's very
	  likely that Audio Bitstream Engine isn't integrated with VDE
	- Removed UCQ interrupt from the DT binding because in TRM it is
	  represented as a distinct HW block that probably should have
	  its own driver
	- Addressed v3 review comments: factored out DT binding addition
	  into a standalone patch, moved binding to media/, removed
	  clocks/resets-names

v3:
	- Suppressed compilation warnings reported by 'kbuild test robot'

v2:
	- Addressed v1 review comments from Stephen Warren and Dan Carpenter
	- Implemented runtime PM
	- Miscellaneous code cleanups
	- Changed 'TODO'
	- CC'd media maintainers for the review as per Greg's K-H request,
	  v1 can be viewed at https://lkml.org/lkml/2017/9/25/606

Dmitry Osipenko (4):
  media: dt: bindings: Add binding for NVIDIA Tegra Video Decoder Engine
  staging: Introduce NVIDIA Tegra video decoder driver
  ARM: dts: tegra20: Add video decoder node
  ARM: defconfig: tegra: Enable Video Decoder driver

Vladimir Zapolskiy (1):
  ARM: tegra: Add device tree node to describe IRAM

 .../devicetree/bindings/media/nvidia,tegra-vde.txt |   55 +
 arch/arm/boot/dts/tegra114.dtsi                    |    8 +
 arch/arm/boot/dts/tegra124.dtsi                    |    8 +
 arch/arm/boot/dts/tegra20.dtsi                     |   35 +
 arch/arm/boot/dts/tegra30.dtsi                     |    8 +
 arch/arm/configs/tegra_defconfig                   |    2 +-
 drivers/staging/Kconfig                            |    2 +
 drivers/staging/Makefile                           |    1 +
 drivers/staging/tegra-vde/Kconfig                  |    7 +
 drivers/staging/tegra-vde/Makefile                 |    1 +
 drivers/staging/tegra-vde/TODO                     |    5 +
 drivers/staging/tegra-vde/uapi.h                   |  101 ++
 drivers/staging/tegra-vde/vde.c                    | 1209 ++++++++++++++++++++
 13 files changed, 1441 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/media/nvidia,tegra-vde.txt
 create mode 100644 drivers/staging/tegra-vde/Kconfig
 create mode 100644 drivers/staging/tegra-vde/Makefile
 create mode 100644 drivers/staging/tegra-vde/TODO
 create mode 100644 drivers/staging/tegra-vde/uapi.h
 create mode 100644 drivers/staging/tegra-vde/vde.c