https://wiki.archlinux.org/api.php?action=feedcontributions&user=DSee&feedformat=atomArchWiki - User contributions [en]2024-03-28T20:49:14ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Nouveau&diff=177092Nouveau2012-01-06T00:02:18Z<p>DSee: /* Dual Head */</p>
<hr />
<div>[[Category:Graphics (English)]]<br />
[[Category:X Server (English)]]<br />
{{i18n|Nouveau}}<br />
{{Article summary start}}<br />
{{Article summary text|This article details the installation of the Nouveau Open Source 3D acceleration graphics driver for NVIDIA cards. The name of the project refers to the fact that "nouveau" means "new" in French.}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|KMS}}<br />
{{Article summary wiki|Xorg}}<br />
{{Article summary wiki|NVIDIA}}<br />
{{Article summary end}}<br />
<br />
[http://nouveau.freedesktop.org/ Nouveau] is an open source graphic driver for NVIDIA cards.<br />
<br />
Do not forget to check out the [http://nouveau.freedesktop.org/wiki/FAQ FAQ] if you have any questions, as there is a lot of valuable information there.<br />
<br />
==Installation==<br />
<br />
Before proceeding, have a look at the [http://nouveau.freedesktop.org/wiki/FeatureMatrix FeatureMatrix] to see what features are supported for a given architecture, and the list of [http://nouveau.freedesktop.org/wiki/CodeNames codenames] to determine the card's category. You could also consult [[Wikipedia:Comparison of Nvidia Graphics Processing Units|wikipedia]] for an even more detailed list.<br />
<br />
* If you already installed the proprietary NVIDIA driver, then remove it first: {{bc|<nowiki><br />
# pacman -Rdds nvidia nvidia-utils<br />
# pacman -S --asdeps libgl<br />
</nowiki>}}<br />
<br />
:{{Tip|If you want to keep Nvidia driver installed, then it [[#Keep NVIDIA driver installed|requires some configuration]] to load the Nouveau driver instead of NVIDIA.}}<br />
<br />
* Install the DDX driver with the following package: {{bc|# pacman -S xf86-video-nouveau}}<br />
<br />
:Also make sure you have [[Xorg]] properly installed.<br />
<br />
* If you want hardware-accelerated 3D support (to run GNOME Shell or KWin's effects for instance), install the DRI driver with the following package: {{bc|# pacman -S nouveau-dri}}<br />
<br />
:{{Warning|<br />
:*The DRI driver is '''experimental''', and may cause rendering corruptions or random GPU lockups (especially on older cards that uses the classic Mesa driver). If you use it, it is recommended to enable the [[Sysctl#Configuration|Magic SysRq key]] to be able to [http://nouveau.freedesktop.org/wiki/LockupRecovery recover from a lockup].<br />
:*See http://nouveau.freedesktop.org/wiki/MesaDrivers before reporting bugs with the 3D drivers.}}<br />
<br />
==Loading==<br />
<br />
The nouveau kernel module should load fine automatically on system boot.<br />
<br />
If it does not happen, then:<br />
* Make sure you do '''not''' have {{ic|nomodeset}} or {{ic|1=vga=}} in GRUB's {{ic|menu.lst}}/{{ic|menu.cfg}} kernel line, since Nouveau needs kernel mode-setting in order to run successfully (see below).<br />
* Also, check that you have not disabled Nouveau by using any modprobe blacklisting within {{ic|/etc/modprobe.d/}}.<br />
<br />
===KMS===<br />
<br />
Kernel Mode-Setting ([[KMS]]) is required by the Nouveau driver. As the system boots, the resolution will likely change when KMS initializes the display driver. Simply installing the Nouveau driver should be enough to get the system to recognize and initialize it in "Late Start" mode (see below). Additional reading: [http://nouveau.freedesktop.org/wiki/KernelModeSetting KernelModeSetting].<br />
<br />
{{Note|Users may prefer the early start method as it does not cause the annoying resolution change part way through the boot process.}}<br />
<br />
====Late start====<br />
With this choice KMS will be enabled when other kernel modules are loaded. You will see the text "Loading modules" and the size of the text may change, possibly with an undesirable flicker.<br />
<br />
====Early start====<br />
This method will start KMS as early as possible in the boot process, when the [[initramfs]] is loaded. Here is how to do this with the official packages:<br />
<br />
# Add "nouveau" to the {{ic|MODULES}} array in {{ic|/etc/mkinitcpio.conf}}: {{bc|<nowiki>MODULES="... nouveau ..."</nowiki>}}<br />
# Re-generate boot image: {{bc|# mkinitcpio -p <kernel preset, e.g. linux>}}<br />
<br />
If experiencing troubles with nouveau leading to rebuild nouveau-drm several times for testing purposes, do not add nouveau to the initramfs. It is too easy to forget to rebuild the initramfs and it will just make any testing harder. Just use ''late start'' until you are confident the system is stable. There might be additional problems with initramfs if you need a firmware for the nv50 family.<br />
<br />
==Tips and tricks==<br />
<br />
===Keep NVIDIA driver installed===<br />
<br />
If you want to keep the proprietary NVIDIA driver installed, but want to use the Nouveau driver:<br />
# Comment out nouveau blacklisting in {{ic|etc/modprobe.d/nouveau_blacklist.conf}} by modifying the line from: {{bc|blacklist nouveau}} to: {{bc|#blacklist nouveau}}<br />
# And tell Xorg to load nouveau instead of nvidia by creating the file {{ic|/etc/X11/xorg.conf.d/20-nouveau.conf}} with the following content: {{bc|<nowiki><br />
Section "Device"<br />
Identifier "Nvidia card"<br />
Driver "nouveau"<br />
EndSection<br />
</nowiki>}}<br />
{{Tip|You can use [[NVIDIA#Switching_between_nvidia_and_nouveau_drivers|these scripts]] if you are switching between open and closed drivers often.}}<br />
<br />
If you already used the NVIDIA driver, and want to test Nouveau without reboot:<br />
# Make sure the 'nvidia' module is no longer loaded: {{bc|# rmmod nvidia}}<br />
# Then load the 'nouveau' module: {{bc|# modprobe nouveau}}<br />
# And check that it loaded fine by looking at kernel messages: {{bc|$ dmesg}}<br />
<br />
===Installing the latest development packages===<br />
You may install the latest -git packages, through AUR:<br />
* You can use {{AUR|mesa-git}} which will allow the installation of the latest Mesa (including the latest DRI driver).<br />
* You can use {{AUR|xf86-video-nouveau-git}} which will allow the installation of the latest DDX driver.<br />
* You can also try installing a newer kernel version, through packages like {{AUR|linux-mainline}} in which the Nouveau DRM code would allow better performance.<br />
* To get the latest nouveau improvements, you should use the {{AUR|linux-git}} package from the AUR, edit the PKGBUILD and use nouveau's own kernel repository, which is currently located at: git://anongit.freedesktop.org/nouveau/linux-2.6.<br />
<br />
Upsteam driver sources can be found here: http://nouveau.freedesktop.org/wiki/Source.<br />
<br />
===Tearing free compositing===<br />
<br />
Edit your {{ic|/etc/X11/xorg.conf.d/20-nouveau.conf}}, in the Device section add:<br />
{{bc|Section "Device"<br />
Identifier "nvidia card"<br />
Driver "nouveau"<br />
Option "GLXVBlank" "true"<br />
EndSection}}<br />
<br />
===Dual Head===<br />
<br />
Nouveau supports the xrandr extension for modesetting and multiple monitors. See the [[RandR12]] page for tutorials.<br />
<br />
Here is a full sample {{ic|/etc/X11/xorg.conf.d/20-nouveau.conf}} above for running 2 monitors in dual head mode. You may prefer to use a graphical tool to configure monitors like GNOME Control Center's Display panel ({{ic|gnome-control-center display}}).<br />
{{bc|<br />
# the right one<br />
Section "Monitor"<br />
Identifier "NEC"<br />
Option "PreferredMode" "1280x1024_60.00"<br />
EndSection<br />
<br />
# the left one<br />
Section "Monitor"<br />
Identifier "FUS"<br />
Option "PreferredMode" "1280x1024_60.00"<br />
Option "LeftOf" "NEC"<br />
EndSection<br />
<br />
Section "Device"<br />
Identifier "nvidia card"<br />
Driver "nouveau"<br />
Option "Monitor-DVI-I-1" "NEC"<br />
Option "Monitor-DVI-I-2" "FUS"<br />
EndSection<br />
<br />
Section "Screen"<br />
Identifier "screen1"<br />
DefaultDepth 24<br />
SubSection "Display"<br />
Depth 24<br />
Virtual 2560 2048<br />
EndSubSection<br />
Device "nvidia card"<br />
EndSection<br />
<br />
Section "ServerLayout"<br />
Identifier "layout1"<br />
Screen "screen1"<br />
EndSection<br />
}}<br />
<br />
===Setting console resolution===<br />
<br />
Use the {{pkg|fbset}} tool to adjust console resolution.<br />
<br />
You can also pass the resolution to nouveau with the video= kernel line option (see [[KMS]]).<br />
<br />
=== Power Management ===<br />
GPU Scaling is in various stages of readiness depending on the GPU. See the following link for additional info:<br />
<br />
http://nouveau.freedesktop.org/wiki/PowerManagement</div>DSee