Set to be merged for the Linux 6.15 kernel is the very initial NOVA driver core code that will be incrementally built up over time in succeeding kernel versions. For Linux 6.15, this open-source NVIDIA kernel driver isn’t of any use for end-users as it’s just the very preliminary pieces to begin crafting the foundation for the driver that is leveraging the NVIDIA GSP found with Turing and newer hardware. In preparation for future kernel cycles, the NOVA skeleton driver pieces were posted for review yesterday to begin fleshing out more of the driver’s design.
Danilo Krummrich posted the latest patches yesterday for working on the Nova DRM skeleton driver for building off the “nova-core” code set to be introduced in Linux 6.15. Plus it depends upon some auxiliary bus abstractions for the Rust programming language that have yet to be upstreamed.
These skeleton driver pieces for this open-source NVIDIA Linux kernel graphics driver amount to another 300+ lines of Rust code. It’s not enough to present anything useful to end-users but another step forward in the long journey.
These patches do at least create a DRM device and exposes some basic ioctls like for creating a dummy DRM GEM memory object and related information to those GEM objects. A small Rust-based Linux user-space application was written for demonstrating these interfaces. But it’s still a far cry from what will ultimately be needed before the likes of the Mesa NVK Vulkan driver will be able to hook into the NOVA kernel driver and provide any usable support. For now you are best off with the official NVIDIA Linux graphics driver stack or otherwise using the existing Nouveau kernel driver with the GSP firmware.
Those interested in this latest NOVA skeleton driver code can find it via the dri-devel list.