Skip to content

NVIDIA Tegra video decoder driver

Dmitry Osipenko linux-devicetree linux-media linux-tegra lkml 5 versions – Applied

Status from this message: Applied, thanks.

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v5 Latest4 patches 7 repliesApplied
  2. v45 patches 15 repliesSuperseded
  3. v32 patches 16 repliesSuperseded
Earlier versions · 2
VersionPostedPatchesRepliesStatus
v22 patches1 replySuperseded
v12 patches13 repliesSuperseded

Changes in v5 from the cover letter

- Moved driver to staging/media as per Hans's Verkuil request
- Addressed review comments to v4 from Vladimir Zapolskiy and Dan Carpenter
- Updated 'TODO', reflecting that this driver require upcoming support of stateless decoders by V4L2
- Dropped patch that enabled VDE driver in tegra_defconfig for now as I realized that Tegra's DRM staging config is disabled there and right now we are relying on it in libvdpau-tegra
- Added myself to MAINTAINERS in the "Introduce driver" patch as per Vladimir's suggestion

Patches in v5 Applied

#Subject and filesSizeRepliesApplied
1/4media: dt: bindings: Add binding for NVIDIA Tegra Video Decoder EngineDocumentation/devicetree/bindings/media/nvidia,tegra-vde.txt+55 -00 replies
2/4staging: media: Introduce NVIDIA Tegra video decoder driverMAINTAINERS drivers/staging/media/Kconfig drivers/staging/media/Makefile +5 more+1315 -04 replies
3/4ARM: dts: tegra20: Add device tree node to describe IRAMarch/arm/boot/dts/tegra20.dtsi+8 -01 reply
4/4ARM: dts: tegra20: Add video decoder nodearch/arm/boot/dts/tegra20.dtsi+27 -01 reply

Reviews trailers per patch

1 of 4 patches has a Reviewed-by or Acked-by.

PatchRob Herring
1/4A-b
2/4
3/4
4/4

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v5 thread

Cover letter [PATCH v5 0/4] NVIDIA Tegra video decoder driver

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:
v5:
- Moved driver to staging/media as per Hans's Verkuil request
- Addressed review comments to v4 from Vladimir Zapolskiy and Dan Carpenter
- Updated 'TODO', reflecting that this driver require upcoming support of stateless decoders by V4L2
- Dropped patch that enabled VDE driver in tegra_defconfig for now as I realized that Tegra's DRM staging config is disabled there and right now we are relying on it in libvdpau-tegra
- Added myself to MAINTAINERS in the "Introduce driver" patch as per Vladimir's suggestion

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 (3):
media: dt: bindings: Add binding for NVIDIA Tegra Video Decoder Engine
staging: media: Introduce NVIDIA Tegra video decoder driver
ARM: dts: tegra20: Add video decoder node

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

 .../devicetree/bindings/media/nvidia,tegra-vde.txt |   55 +
 MAINTAINERS                                        |    9 +
 arch/arm/boot/dts/tegra20.dtsi                     |   35 +
 drivers/staging/media/Kconfig                      |    2 +
 drivers/staging/media/Makefile                     |    1 +
 drivers/staging/media/tegra-vde/Kconfig            |    7 +
 drivers/staging/media/tegra-vde/Makefile           |    1 +
 drivers/staging/media/tegra-vde/TODO               |    4 +
 drivers/staging/media/tegra-vde/tegra-vde.c        | 1213 ++++++++++++++++++++
 drivers/staging/media/tegra-vde/uapi.h             |   78 ++
 10 files changed, 1405 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/nvidia,tegra-vde.txt
 create mode 100644 drivers/staging/media/tegra-vde/Kconfig
 create mode 100644 drivers/staging/media/tegra-vde/Makefile
 create mode 100644 drivers/staging/media/tegra-vde/TODO
 create mode 100644 drivers/staging/media/tegra-vde/tegra-vde.c
 create mode 100644 drivers/staging/media/tegra-vde/uapi.h
Signature · 1 line
2.15.1