Nouveau (Français)
Cet article traite du pilote libre Nouveau pour les cartes graphiques NVIDIA. Pour des informations sur le pilote propriétaire, consultez NVIDIA.
Trouvez le nom de code de votre carte (une liste plus détaillée est disponible sur Wikipedia), et comparez-le au tableau des fonctionnalités pour savoir lesquelles sont prises en charge.
Installation
Installez le paquet mesa, qui fournit le pilote DRI pour l'accélération 3D.
- Pour prendre en charge les applications 32 bits, installez également le paquet lib32-mesa du dépôt multilib.
- Pour le pilote DDX (qui fournit l'accélération 2D dans Xorg), installez le paquet xf86-video-nouveau.
Consultez également Hardware video acceleration.
Chargement
Le module du noyau Nouveau devrait se charger automatiquement au démarrage du système. Si ce n'est pas le cas, alors :
- Assurez-vous que vous n'avez pas
nomodeset
ouvga=
en tant que paramètre du noyau, puisque Nouveau requiert le «kernel mode-setting». - Vérifiez également que vous n'avez pas désactivé Nouveau en utilisant une technique de liste noire de modprobe dans
/etc/modprobe.d/
ou/usr/lib/modprobe.d/
. - Si tout ce qui précède ne permet toujours pas de charger nouveau, vérifiez dmesg pour une erreur d'opcode. Ajoutez
nouveau.config=NvBios=PRAMIN
à vos paramètres du noyau pour empêcher le déchargement du module. [1] - Vérifiez si
/etc/X11/xorg.conf
existe et fait référence au pilotenvidia
. C'est probablement une bonne idée de renommer le fichier.
Activer le KMS précoce
Le Kernel mode setting (KMS) est requis par le pilote Nouveau. Par défaut, le KMS est effectué après le chargement des autres modules du noyau. Vous consulterez le texte "Loading modules" et la taille du texte peut changer, éventuellement avec un scintillement indésirable. Consultez la page Nouveau KernelModeSetting pour plus de détails.
Il est également possible de lancer le KMS le plus tôt possible dans le processus de démarrage, lorsque l'initramfs est chargé.
Pour ce faire, ajoutez nouveau
au tableau MODULES
dans /etc/mkinitcpio.conf
. (les noms des modules sont séparés par des espaces) :
MODULES=(... nouveau ...)
Si vous utilisez un fichier EDID personnalisé, vous devez également l'intégrer dans initramfs :
/etc/mkinitcpio.conf
FILES="/lib/firmware/edid/your_edid.bin"
Re-générez l'initramfs pour finir.
Trucs et astuces
Garder le pilote NVIDIA installé
Si vous voulez garder le pilote propriétaire NVIDIA installé (et n'utilisez pas OpenGL), mais que vous voulez utiliser le pilote Nouveau, commentez la liste noire de nouveau dans /etc/modprobe.d/nouveau_blacklist.conf
, /usr/lib/modprobe.d/nvidia.conf
, ou /usr/lib/modprobe.d/nvidia-dkms.conf
en le modifiant comme suit :
#blacklist nouveau
Et dites à Xorg de charger nouveau au lieu de nvidia en créant le fichier /etc/X11/xorg.conf.d/20-nouveau.conf
avec le contenu suivant :
Section "Device" Identifier "Nvidia card" Driver "nouveau" EndSection
Si vous avez déjà utilisé le pilote NVIDIA, et que vous voulez tester Nouveau sans redémarrage, assurez-vous que le module 'nvidia' n'est plus chargé :
# rmmod nvidia
Chargez ensuite le module 'nouveau' :
# modprobe nouveau
Et vérifiez qu'il est bien chargé en regardant les messages du noyau :
# dmesg
Installation des derniers paquets de développement
Pour obtenir les dernières améliorations de Nouveau:
- linux-gitAUR
- libdrm-gitAUR
- lib32-libdrm-gitAUR
- lib32-mesa-gitAUR
- mesa-gitAUR
- xf86-video-nouveau-gitAUR
Dual head
Consultez Multihead#RandR pour savoir comment configurer plusieurs moniteurs en utilisant RandR.
Réglage de la résolution de la console
Vous pouvez passer la résolution à nouveau avec l'option de ligne de noyau video=
(consultez KMS).
Gestion de l'alimentation
L'absence d'une gestion de l'énergie appropriée dans le pilote nouveau est l'une des causes les plus importantes des problèmes de performance, puisque la plupart des cartes resteront dans leur état de faible puissance avec des horloges plus basses pendant leur utilisation. Une prise en charge expérimentale du re-cadencage du GPU est disponible pour certaines cartes (consultez la page Nouveau PowerManagement) et depuis le noyau 4.5, elle peut être contrôlée par une interface debugfs située à /sys/kernel/debug/dri/*/pstate
.
Par exemple, pour vérifier les états d'alimentation disponibles et le paramètre actuel pour la première carte de votre système, exécutez :
# cat /sys/kernel/debug/dri/0/pstate
Il est également possible de définir/forcer manuellement un certain état d'alimentation en écrivant dans ladite interface :
# echo pstate > /sys/kernel/debug/dri/0/pstate
Contrôle des ventilateurs
S'il est implémenté pour votre carte, vous pouvez configurer le contrôle du ventilateur via /sys
.
$ find /sys -name pwm1_enable /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/hwmon/hwmon1/pwm1_enable $ readlink /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/driver ../../../../bus/pci/drivers/nouveau
pwm1_enable
peut être réglé sur 0, 1 ou 2, ce qui signifie NONE, MANUAL et AUTO. S'il est réglé sur le contrôle manuel du ventilateur, vous pouvez régler pwm1
manuellement, par exemple sur 40 pour 40%.
Vous pouvez également le définir par une règle udev :
$ cat /etc/udev/rules.d/50-nouveau-hwmon.rules ACTION=="add", SUBSYSTEM=="hwmon", DRIVERS=="nouveau", ATTR{pwm1_enable}="2"
Sources :
- https://floppym.blogspot.de/2013/07/fan-control-with-nouveau.html
- https://web.archive.org/web/20141031191559/https://kalgan.cc/blog/posts/Controlling_nVidia_cards_fans_with_nouveau_in_Debian/
Optimus
Vous avez deux solutions pour utiliser Optimus sur un ordinateur portable (aka graphique hybride, lorsque vous avez deux GPU sur votre ordinateur portable) : bumblebee et PRIME.
Synchronisation verticale
Les compositeurs Xorg sont sujets à des problèmes d'affichage avec Nouveau. Contrairement à la plupart d'entre eux, Picom offre de nombreuses options à régler pour obtenir un résultat plus fluide et sans déchirure. Une configuration qui devrait donner un bon résultat serait la suivante :
$ picom -b --unredir-if-possible --backend xr_glx_hybrid --vsync --use-damage --glx-no-stencil
Dépannage
Ajoutez drm.debug=14
et log_buf_len=16M
à vos paramètres du noyau pour activer le débogage vidéo :
Créer un journal Xorg verbeux :
$ startx -- -logverbose 9 -verbose 9
Affichez les paramètres et les valeurs du module vidéo chargé :
$ modinfo -p video
Désactiver MSI
Si vous avez toujours des problèmes pour charger le module ou démarrer le serveur X, ajoutez nouveau.config=NvMSI=0
à vos paramètres du noyau.
Source : https://bugs.freedesktop.org/show_bug.cgi?id=78441
Problème de sortie fantôme
Il est possible pour le pilote nouveau de détecter des sorties "fantômes". Par exemple, VGA-1 et LVDS-1 sont affichés comme connectés mais seul LVDS-1 est présent.
Cela provoque des problèmes d'affichage et/ou empêche la suspension à la fermeture du couvercle.
Paramètres du noyau
Le problème peut être résolu en désactivant la sortie fantôme (VGA-1 dans les exemples donnés) avec les paramètres du noyau :
video=VGA-1:d
Avec d = désactivation.
Le nouveau module du noyau a également une option pour désactiver la détection de la sortie TV [2] :
tv_disable=1
Configuration Xorg
La sortie fantôme peut être désactivée dans Xorg en ajoutant ce qui suit à /etc/X11/xorg.conf.d/20-nouveau.conf
:
Section "Monitor" Identifier "VGA-1" Option "Ignore" "1" EndSection
Xrandr
Xrandr peut désactiver la sortie :
$ xrandr --output VGA-1 --off
Ceci peut être ajouté à la configuration de xinit.
Blocages aléatoires avec messages d'erreur du noyau
Des puces NVIDIA spécifiques avec Nouveau peuvent provoquer des blocages aléatoires du système et, plus fréquemment, de nombreux messages du noyau, consultés avec dmesg. Essayez d'ajouter nouveau.noaccel=1
aux paramètres du noyau. Consultez Fedora:Common kernel problems#Systems with nVidia adapters using the nouveau driver lock up randomly pour plus d'informations.
Comme alternative, vous pouvez également utiliser la variable d'environnement QT_XCB_FORCE_SOFTWARE_OPENGL=1
pour désactiver l'accélération OpenGL dans les applications Qt.
Flat Panel Table Invalid
Les cartes graphiques NVIDIA avec des chipsets récents peuvent causer des problèmes de démarrage - cela inclut l'impossibilité de démarrer X11 et le gel indéfini de lspci [3] [4] [5] [6] [7].
Cela peut casser les distributions «live» ou les supports d'installation. Cela peut être détecté soit en exécutant lspci, soit en vérifiant le journal systemd pour l'erreur :
nouveau E[ DRM]Pointer to flat panel table invalid
Le système peut démarrer si le pilote Nouveau est désactivé en passant les paramètres du noyau suivants :
modprobe.blacklist=nouveau
Le pilote Nouveau peut alors être chargé en utilisant
# modprobe nouveau
Le système devrait alors fonctionner correctement. Si vous avez une autre carte graphique NVIDIA, ou si vous voulez simplement être sûr, vous pouvez désactiver la carte incriminée en utilisant :
$ echo 1 > /sys/bus/pci/devices/[id du périphérique de la carte]/remove