NVIDIA has published the source code of its Linux kernel modules for the R515 driver on the GitHub repository that the company maintains. The source code is available under a dual licensing model, which makes analyzing, tweaking, and integration easier as the modules are now legally re-distributable.
NVIDIA has open-sourced its Linux GPU kernel drivers for all the products made and released after 2018. This means the source code Linux kernel modules for the GeForce 30 and GeForce 20 series, the GTX 1650 and 1660, and data center-grade A series, Tesla, and Quadro RTX, are available on the GitHub repository. As they are published under the dual licensing model that combines the GPL and MIT licenses, the modules are legally re-distributable.
The GPU maker claims this step will help improve its products" experience on the Linux platform. The open-source aspect should significantly simplify the integration process in Linux distributions, debugging, and boosting contribution activity.
This is by far the biggest step NVIDIA has taken toward the open-source ecosystem, but large parts of the code are still hidden. This is because a significant portion of the code was moved to the firmware side before open-sourcing the Linux kernel modules.
Apart from locking up the firmware, the user-mode drivers will also remain closed source. The drivers will be published with pre-built binaries. Needless to mention, this means the major part of the source code and a large chunk of the modern graphics drivers are still inaccessible.
It is important to note that NVIDIA drivers are still not a part of the Linux kernel. In other words, there’s no possibility of upstream integration. What this means is that NVIDIA"s move won"t have any significant impact on drivers and Linux distributions initially.
Nonetheless, the developers of the Nouveau driver can still utilize the open-source graphics driver to improve their code and upgrade performance considerably. Some of the key aspects of GPU functionalities like the clock and thermal management are now available for analysis. Hence, targeted improvements on the open-source drivers are still possible.