Nouveau

nouveau Article description::the open source driver for [[NVIDIA graphic cards.]]

Limitations
Being an open source project running on what is largely proprietary hardware, there are some limitations inherent to Nouveau that are not applicable to the closed-source nvidia-drivers. That said, Nouveau is constantly evolving, so these limitations are subject to change over time.

Kernel
Activate the following kernel options:

Firmware
Beginning with the Kepler series (GeForce 600 and above), some cards may need to load firmware at boot time in order to operate correctly. It is recommended to build firmware that is needed into the kernel. This is the default for systems running the systemd init system.

See upstream's list of codenames to determine what firmware is necessary.

See the Linux firmware article for more information on building firmware into the kernel.

Udev
If NVIDIA's proprietary driver has been installed, it will have installed a udev rules file in. When attempting to use the nouveau driver without disabling that rule file, the X11 log file fill up with a block of messages like this repeating every 10ms:

To prevent this (without uninstalling the package), simply remove/move/rename the udev file  so that is no longer taken up by udev (see Advanced Configuration of udev). Note that the next time nvidia-drivers is updated, that file will be re-installed, so consider unmerging nvidia-drivers.

xorg.conf
The X server is designed to work out-of-the-box, with no need to manually edit X.Org's configuration files. It should detect and configure devices such as displays, keyboards, and mice.

However, the main configuration file of the X server is the file.

Limitations
Some of the current issues or draw-backs compared to the closed-source are stated below:


 * Performance (especially 3D performance) on the same card/chipset may be significantly worse than using nvidia-drivers.
 * Attempts to run at higher refresh rates (i.e. above 60 Hz) may fail.
 * Using advanced features from various NVIDIA cards (e.g. multiple-display capabilities of Quadro cards without SLI) may not function correctly.

Multi-monitor problems
When the screen freezes often with possible EDID probes while using dual monitors/displays, try adding  or   (enable or disable respectively) to the GRUB_CMDLINE_LINUX_DEFAULT variable in the  file. With GRUB Legacy, edit the file directly and add it as command line options. In either case, make sure to substitute the name of the monitor listed within or  (i.e. CRT-1, VGA-1, LVDS-1, DVI-1, ...)

For instance, on a Dell Inspiron 8100 laptop with a connected external display connected via the laptop's external VGA port, a possible command line is:. The EDID (DRM) probe on the external VGA connected display is still causing freezing during nouveau/DRM load for the author, but at least it's usable if the display is connected after GRUB is loaded and prior to the nouveau/DRM modules loading. And with the prior mentioned command line LVDS/VGA resolutions, the displays are cloned and centred with somewhat correct resolutions for cloned displays.

NVIDIA Optimus
When using a laptop with NVIDIA's Optimus technology (usually found in laptops built in 2010 and later), everything will be passed through the integrated graphics controller (usually Intel) before it gets to the discrete video card (NVIDIA), which can cause a lot of otherwise unexplained problems when enabled. There are a few ways to handle this, but the simplest is to disable Optimus through the BIOS (normally accessed by pressing during boot). This will result in increased power consumption (decreased battery life, increased running temperature), as the NVIDIA card will now be handling all of the work all of the time.

External resources

 * https://nouveau.freedesktop.org/wiki/VideoAcceleration/ - This wiki page provides an overview of NVIDIA cards that support hardware acceleration by VDPAU.
 * https://nouveau.freedesktop.org/wiki/KernelModuleParameters/ - Provides a list of possible parameters to pass to the nouveau kernel module.