A few days back I reported on re-clocking support coming to Nouveau for the newer NVIDIA hardware. Hitting nouveau/linux-2.6 yesterday were a slew of patches that work on the re-clocking code along with support for adjusting the graphics memory timings, among other support work.
In total the Nouveau DRM patches committed yesterday impact around 1,000 lines of code in the kernel driver. This work is mostly for the NV50-class hardware, which is the GeForce 8, 9, 100, 200, and 300 series. Still under development is the GeForce 400/500 "Fermi" hardware support. The NV50 video RAM re-clocking right now is for graphics cards with DDR2/DDR3/GDDR3 memory.
This newly-committed code also allows selecting several power/performance profiles for AC and battery power consumption. A current limitation though of this code is that if multiple displays are connected or a display has a resolution above 1920 x 1200, the highest performance state is always being used now and for the time being it will not re-clock to a lower power state. This is being done to ensure there is sufficient video memory bandwidth for scanning out to the display(s), similar to the Radeon driver's power management / re-clocking limitation in these scenarios.
I'm still going through the patches but will be running new Nouveau tests this weekend and hopefully having some new Nouveau benchmarks out next week of this latest experimental Nouveau DRM paired with Mesa 8.0. My latest results for now were just published earlier this week in Nouveau For A $10 NVIDIA Graphics Card.
Another unrelated change that was also pushed into the Nouveau kernel repository is exposing the color vibrance control for NV50.
This work isn't for the upcoming Linux 3.3 kernel but will be part of the merge for the Linux 3.4 kernel, hopefully with some other changes and ideally some Nouveau improvements for the GeForce 400/500-Fermi graphics processors.
This latest Nouveau work was done by Ben Skeggs and Martin Peres. Martin will also be talking next week about the state of Nouveau and the future of this open-source community driver at FOSDEM 2012.