In recent years, engineers from Red Hat have been working on a new open-source driver called NOVA, which is developed using the Rust programming language. This driver aims to become the successor to the older Nouveau driver, a reverse-engineered solution that has not seen significant updates lately. However, the NOVA driver will focus specifically on supporting NVIDIA’s RTX 20 series “Turing” GPUs and newer models that utilize the NVIDIA GPU System Processor (GSP). This targeted approach is intended to streamline the driver development process by taking advantage of existing firmware support.
The initial NOVA driver code was submitted for consideration in the DRM-Next repository on a Sunday, just before the merging period for the Linux 6.15 kernel. If this submission receives approval without major objections from prominent developers like Linus Torvalds, Linux 6.15 may feature the NOVA driver as the first Rust-based Direct Rendering Manager driver to be included in the mainline kernel.
It is important to note that what has been submitted is merely the foundational structure of the driver and is not yet ready for general use. The development team is adopting a strategy of gradually building the driver within the mainline kernel instead of creating a fully formed driver for review all at once. As a result, users will continue to rely on either the existing Nouveau driver or NVIDIA’s official out-of-tree drivers for the foreseeable future.
One key advantage of the NOVA driver is its reliance on GSP firmware, which takes on significant computational tasks. Since the driver is designed for recent GPU generations, the hope is that the development process will be much faster than the lengthy timeline it took for the Nouveau driver to reach a practical level of functionality for open-source NVIDIA support.
Danilo Krummrich from Red Hat announced the pull request for the NOVA driver, stating that it consists of essential components, including the skeleton framework and initial project documentation. The submission includes approximately 1,207 lines of code, with about 700 lines written in Rust, while the remaining lines comprise early documentation—over 400 of which are designated for the project’s future to-do items.
Over the coming Linux kernel releases, the NOVA driver is expected to expand and mature until it becomes a robust open-source solution for NVIDIA GPU support, particularly when combined with NVIDIA’s GSP firmware binaries.
It’s encouraging to see the NOVA project’s initial code making its way into the Linux 6.15 kernel cycle. This new open-source driver aims to provide a competitive alternative to NVIDIA’s official Linux driver. Its modern architecture and maintenance-friendly design are expected to overcome some of the limitations found in the older Nouveau driver, setting the stage for a promising path forward in open-source graphics support for NVIDIA hardware.