Nouveau: A First Look
One of the ways that Linux users can assist this project is by submitting register dumps. To handle the reverse-engineering process is REnouveau (Reverse Engineer nouveau). REnouveau runs OpenGL tests and monitors changes in the video card registers. In order to use REnouveau you must also be using a recent NVIDIA closed-source display driver. Using REnouveau is considered "clean-room" reverse engineering and is not in violation of NVIDIA's license. This application is available from the Nouveau SourceForge CVS server.
Another possible way to help is by pledging a donation to this project. David Nielsen had started a pledge (at PledgeBank) where if at least 1,000 people agree to make a pledge of at least $10 USD or more he will do the same. This pledge drive is ending in early February and at the time of writing 387 people have signed up out of the 1,000 people needed. As Nouveau developers are all employed, it is assumed that the generated money would be used for purchasing additional hardware for testing.
For this article we had tried the Nouveau driver with a NVIDIA GeForce 6150 (integrated), GeForce 6600GT, and GeForce 7800GTX. The driver had detected the hardware, and the 2D driver is mostly stable, but as expected the 3D driver is far from complete. We had also run into problems with the GeForce 6150 running at 1280 x 1024 as well as some other issues and running glxgears. Earlier this month David Airlie had imported the Nouveau project driver and DRM into the mainline Mesa git repository. This was done to assist development and not signify the driver is ready to ship. Greater detail about the status of the Nouveau driver is available here. On the project's Wiki TODO list there are 35 major points left in seven areas. Some of the recent development advancements have been support for double buffering and REnouveau working with the GeForce 8800 series.
Another advantage to the Nouveau project is NVIDIA support on PowerPC. At this time, NVIDIA does not offer any Linux display driver for PowerPC, while the Nouveau project has this support on top of x86 and x86_64. In addition to the REnouveau application, the Nouveau project also offers a modified version of NVClock. This version of NVClock is based upon NVClock 0.8pre and is modified in order to be able to write all the NVIDIA registers.
So when will the Nouveau driver be ready? The Wiki states that the project should be mostly usable in autumn 2007. Keith Packard had previously expressed hope that the driver would be ready in time for the X.Org 7.3 release. David Airlie has also stated that the DRM portion will be added to the kernel once it is at a stage where it can be supported. Like the current open-source ATI display drivers, once completed these open-source NVIDIA drivers will likely perform significantly lower than the closed-source NVIDIA drivers, but should be suffice for desktop usage. There is still plenty of work ahead for this project until it becomes widely usable but we are very glad to see the existence of this project to create an open-source 3D NVIDIA display driver. Once this driver is ready, we will be sure to publish plenty of benchmarks and additional thoughts. We wish the Nouveau project the best of luck in 2007.
This article and the Nouveau drivers can be discussed in the Phoronix Forums.
If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.