Discussion:
[fedora-arm] Fedora 28 with the "grate-driver" for (older) Tegra
Nicolas Chauvet
2018-09-12 13:19:26 UTC
Permalink
Hi,


FYI I've recently compiled a set of packages (1) from the grate-driver
project (2).

In short, this FLOSS driver allows to enable video acceleration with
vdpau on older tegra soc.
There is also a very basic mesa driver, but it only advertise opengl
1.4 and gles 2.0 (probably not really conformant even). At least it
doesn't crash with glxgears.
There is support up to Tegra114, Tegra K1 may comes later using the
same framework.

Please reminds that for later SOC (Tegra K1+), f29 will have a better
support. There mesa has tegra/nouveau mesa drivers that will operate.
(not tested recently).


Mini FAQ:
- Why not upstream ?
There is an ABI destaging process in progress for tegra in the Linux
kernel. Once done, it will be probably possible to have more changes
upstream. Unfortunately, this is a long process and the review queue
in Tegra is growing.
- How to enable video hw acceleration ?
Look at the grate-driver page for libvdpau-tegra for the doc
You will need the mesa libdrm libvdpau-tegra xorg-x11-drv-opentegra
packages from the (2) repos. These replace fedora ones. You can keep
the fedora kernel. Please verify to have about cma=128M.


(1) - https://repos.fedorapeople.org/kwizart/ac100/
(2) - https://github.com/grate-driver/

--
-

Nicolas (kwizart)
_______________________________________________
arm mailing list -- ***@lists.fedoraproject.org
To unsubscribe send an email to arm-***@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproj
Peter Robinson
2018-09-12 15:13:36 UTC
Permalink
Post by Nicolas Chauvet
In short, this FLOSS driver allows to enable video acceleration with
vdpau on older tegra soc.
How does this relate to the tegr-vde driver for video acceleration
that's already in the upstream kernel[1] , albeit in staging, that
supports tegra20-114 now.
Post by Nicolas Chauvet
There is also a very basic mesa driver, but it only advertise opengl
1.4 and gles 2.0 (probably not really conformant even). At least it
doesn't crash with glxgears.
There is support up to Tegra114, Tegra K1 may comes later using the
same framework.
There's also a patch series to add 124 AKA TK1 support [2] and once
they add support for the v4l requests API [3] this should all work
OOTB with standard mesa AFAICT. So my question is how does grate fit
into / relate to the upstream work?
Post by Nicolas Chauvet
Please reminds that for later SOC (Tegra K1+), f29 will have a better
support. There mesa has tegra/nouveau mesa drivers that will operate.
(not tested recently).
Well with the VDE driver and the v4l requests API the TK1 should
support accelerated video once the userspace settles down, the newer
devices (tegra210/186 etc) have completely different video decode IP
blocks.
Post by Nicolas Chauvet
- Why not upstream ?
There is an ABI destaging process in progress for tegra in the Linux
kernel. Once done, it will be probably possible to have more changes
upstream. Unfortunately, this is a long process and the review queue
in Tegra is growing.
- How to enable video hw acceleration ?
Look at the grate-driver page for libvdpau-tegra for the doc
You will need the mesa libdrm libvdpau-tegra xorg-x11-drv-opentegra
packages from the (2) repos. These replace fedora ones. You can keep
the fedora kernel. Please verify to have about cma=128M.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cd6c56feb591f6fe66bebcbeb43ecc0e2acdcffa
[2] https://www.spinics.net/lists/linux-tegra/msg35020.html
[3] https://www.spinics.net/lists/linux-tegra/msg35462.html
_______________________________________________
arm mailing list -- ***@lists.fedoraproject.org
To unsubscribe send an email to arm-***@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/***@lists.fedoraproject.or
Nicolas Chauvet
2018-09-12 16:17:26 UTC
Permalink
Post by Peter Robinson
Post by Nicolas Chauvet
In short, this FLOSS driver allows to enable video acceleration with
vdpau on older tegra soc.
How does this relate to the tegr-vde driver for video acceleration
that's already in the upstream kernel[1] , albeit in staging, that
supports tegra20-114 now.
The tegra-vde driver is used unmodified by the tegra vdpau backend
But the libvdpau-tegra backend requires few missing patches from the
grate-driver modified libdrm.
That's the patches I hope to see merged once the kernel ABI for tegra
drm is unstaged.

Then there is a need for a video output. Without a good opengl driver,
the best choice is currently to use the legacy Xv video output.
This can be granted by using the opentegra DDX which also requires the
modified libdrm.
Using the modified libdrm, libvdpau-tegra and modified
xorg-x11-drv-opentegra is enough to get video acceleration.
Using the modified mesa will allow to use the DRI2 framework to
autodetect the appropriate vdpau backend.
Post by Peter Robinson
Post by Nicolas Chauvet
There is also a very basic mesa driver, but it only advertise opengl
1.4 and gles 2.0 (probably not really conformant even). At least it
doesn't crash with glxgears.
There is support up to Tegra114, Tegra K1 may comes later using the
same framework.
There's also a patch series to add 124 AKA TK1 support [2] and once
they add support for the v4l requests API [3] this should all work
OOTB with standard mesa AFAICT. So my question is how does grate fit
into / relate to the upstream work?
I've only tested this patch WRT older hardware and it breaks video acceleration.

v4l requests API is the way forward indeed, I haven't seen any code for Tegra,
There are plans. I don't know yet about the userspace, but at least
there is a bridge for vaapi enabled applications.

About grate and upstream, it's still un-clear if there will be two
drivers or only one within mesa


--
-

Nicolas (kwizart)
_______________________________________________
arm mailing list -- ***@lists.fedoraproject.org
To unsubscribe send an email to arm-***@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedorap

Loading...