NVIDIA Provides Open-Source Tegra K1 Support In Nouveau

Written by Michael Larabel in NVIDIA on 1 February 2014 at 05:26 PM EST. 36 Comments
NVIDIA
For those questioning whether NVIDIA's open-source graphics merits of the past few months have been real, this weekend NVIDIA released the initial open-source hardware enablement code to support their forthcoming Tegra K1 SoC graphics within Nouveau!

NVIDIA's Tegra K1 is super exciting and was announced at the beginning of Januart. The K1 features Kepler-based graphics and should be a mighty-powerful ARM chip. NVIDIA has already been supporting their binary graphics driver on ARM for several months, but now to complement their official high-performance binary graphics driver is Nouveau graphics driver support for this SoC that has yet to even materialize.

Nouveau for years has relied upon community reverse-engineering but now NVIDIA has provided the first hardware enablement patches to the driver. Alexandre Courbot of NVIDIA wrote on the DRI mailing list, "GK20A is the Kepler-based GPU used in the upcoming Tegra K1 chips. The following patches perform architectural changes to Nouveau that are necessary to support non-PCI GPUs and add initial support for GK20A. Although the support is still very basic and more user-space changes will be needed to make the full graphics stack run on top of it, we were able to successfully open channels and run simple pushbuffers with libdrm."

This Tegra K1 Nouveau support is still proof-of-concept but is a huge step forward in coming from NVIDIA themselves. It was only this past September they committed to better open-source graphics support and since then we have only seen a couple light documentation drops, until the work this weekend.

The announcement went on to say, "I guess my email address might surprise some of you, so let me anticipate some questions you might have. :P Yes, this work is endorsed by NVIDIA. Several other NVIDIAns (CC'd), including core GPU experts, have provided significant technical guidance and will continue their involvement. Special thanks go to Terje Bergstrom and Ken Adams for their invaluable GPU expertise, and Thierry Reding (at FOSDEM this weekend) for help with debugging and user-space testing."

At the moment this experimental work is limited to Nouveau's DRM kernel driver and not the Nouveau Gallium3D driver nor xf86-video-nouveau DDX.

While some may be leaping for joy, the binary NVIDIA driver will likely be the preferred option for the foreseeable future given that Nouveau is still stuck to GL3 compared to NVIDIA's OpenGL 4.x hardware, the performance is many times better, and there's numerous other features not found in the open-source NVIDIA driver at this time.

For an idea as to the NVIDIA open-source driver situation check out our recent 25-way open-source Intel/AMD/NVIDIA GPU comparison and the problems encountered in using Nouveau. Hopefully the NVIDIA Linux engineers will make Nouveau more reliable in the months ahead, especially with regards to power management / re-clocking.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week