Hello, This series adds support for the NVJPG hardware accelerator found in the Tegra210 SoC.
The kernel driver is essentially a copy of the NVDEC driver as both engines are Falcon-based. For the userspace part I have written a Mesa Gallium backend [1] that, while still very much experimental, works in decoding images with VA-API. I have been using ffmpeg to call VA-API with the following command: ffmpeg -v verbose -hwaccel vaapi -hwaccel_device /dev/dri/renderD129 -i <input.jpg> -pix_fmt bgra -f fbdev /dev/fb0 which decodes <input.jpg> and shows the result in the framebuffer. The firmware for the engine can be obtained from a Linux for Tegra distribution. Due to the way the Gallium implementation works for Tegra the GPU also needs to be enabled. Thanks! Diogo To: Thierry Reding <thierry.red...@gmail.com> To: Mikko Perttunen <mperttu...@nvidia.com> To: David Airlie <airl...@gmail.com> To: Simona Vetter <sim...@ffwll.ch> To: Jonathan Hunter <jonath...@nvidia.com> To: Philipp Zabel <p.za...@pengutronix.de> To: Rob Herring <r...@kernel.org> To: Krzysztof Kozlowski <krzk...@kernel.org> To: Conor Dooley <conor...@kernel.org> Cc: linux-ker...@vger.kernel.org Cc: dri-devel@lists.freedesktop.org Cc: linux-te...@vger.kernel.org Cc: devicet...@vger.kernel.org Signed-off-by: Diogo Ivo <diogo....@tecnico.ulisboa.pt> [1]: https://gitlab.freedesktop.org/d.ivo/mesa/-/tree/diogo/vaapi_gl?ref_type=heads --- Diogo Ivo (3): drm/tegra: Add NVJPG driver arm64: tegra: Add NVJPG power-domain node arm64: tegra: Add NVJPG node arch/arm64/boot/dts/nvidia/tegra210.dtsi | 14 +- drivers/gpu/drm/tegra/Makefile | 1 + drivers/gpu/drm/tegra/drm.c | 2 + drivers/gpu/drm/tegra/drm.h | 1 + drivers/gpu/drm/tegra/nvjpg.c | 379 +++++++++++++++++++++++++++++++ 5 files changed, 396 insertions(+), 1 deletion(-) --- base-commit: 386b76a190ce68afc19d481f17cab1f5479c719b change-id: 20250605-diogo-nvjpg-e0d4c57126c5 Best regards, -- Diogo Ivo <diogo....@tecnico.ulisboa.pt>