Nouveau (Français)

From ArchWiki
État de la traduction: Cet article est la version francophone de Nouveau. Date de la dernière traduction: 2022-10-03. Vous pouvez aider à synchroniser la traduction s'il y a eu des changements dans la version anglaise.

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 ou vga= 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 pilote nvidia. C'est probablement une bonne idée de renommer le fichier.

Activer le KMS précoce

Astuce: Si vous avez des problèmes de résolution, vérifiez Kernel mode setting (Français)#Forcer les modes et l'EDID.

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

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
Attention: La prise en charge du re-cadencage est très expérimentale. Le réglage manuel de l'état d'alimentation peut bloquer votre système, provoquer une corruption ou une surchauffe de votre carte.

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%.

Attention: À utiliser à vos risques et périls ! Ne faites pas surchauffer votre carte !

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 :

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
Astuce: N'oubliez pas de désactiver la composition du gestionnaire de fenêtres de votre DE comme KWin lorsque vous utilisez un autre compositeur

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

Source : https://web.archive.org/web/20170118202740/http://gentoo-en.vfose.ru/wiki/Nouveau#Phantom_and_unpopulated_output_connector_issues

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