Comment installer le pilote NForce ?

pilote NForce

Le but de cet HOWTO est d’aider à installer les drivers nforce sous Mandrake 9.x. J’ai essayé de donner la méthode la plus propre qu’il soit pour que cela se passe sans encombres et ce en détaillant le plus possible.
Les commandes doivent être fait en tant que root ( super-utilisateur ).

Information :
Les pilotes nforce disponibles sur le site de nvidia sont nécessaires pour faire marcher l’interface réseau du chipset ( nvnet ). Ils servent aussi pour la carte sons, mais linux peut gérer la carte son du chipset nforce avec le pilote snd-intel8x0 en lieu et place du pilote de nvidia ( nvaudio ).

Préparation

REQUIS :
binutils, gcc, ed, kernel-source, glibc-devel, rpm-build

ed, kernel-source, glibc-devel se trouvent sur les CD de la distribution et peuvent être installé via urpmi/rpmdrake.
Vous devez installer la version de kernel-source qui correspond au noyau que vous utiliser !

$> urpmi binutils ed kernel-source rpm-build<- on install ed, binutils, kernel-source et rpm-build. glibc-devel est installé automatiquement lorsque l’on installe kernel-source
$> rpm -qa | grep kernel-source<- on vérifie la version de kernel-source, par exemple on peut avoir kernel-source-2.4.22-26mdk
$> uname -r<- on vérifie la version du noyau que l’on utilise. Celle-ci doit correspondre. Par exemple cela devrait donner dans mon cas 2.4.22-26mdk

Note :
Si votre noyau est plus ancien que la version des kernel-source que vous avez, cela signifie que vous avez installé la dernière version des kernel-source de votre distribution et qu’un nouveau noyau est disponible. Ceci arrive si vous avez configuré votre système pour récupérer les mises à jour de sécurité et corrections de bogues via internet. Pour récupérer la dernière version du noyau, il vous suffit alors de l’installer via urpmi.
Pour cela vous tapez soit :
$> urpmi -p kernel
qui vous donnera une liste des noyaux disponible, ou alors pour être sûr, vous taper directement le nom entier du noyau que vous voulez :
$> urpmi kernel-2.4.22-26mdk
Pour toujours utiliser la dernière version disponibles des noyaux pour votre système, mettez à jour vos sources updates :
$> urpmi.update -a
Puis récupérez les dernières version de votre noyau et de kernel-source avec urpmi.

1°/ Récupération des drivers :

Télécharger les drivers nvidia sur le site de nvidia. Vous sélectionnez “Linux IA32 Drivers” ( IA32 = Intel Architecture 32 bits, soit les processeurs Intel/AMD/Ciryx/Via 32 bits ). Si vous avez une connexion internet, vous pouvez procéder comme cela en console :

$> urpmi wget<- on install wget qui va nous permettre de télécharger les drivers
$> cd /tmp<- on va télécharger les drivers dans le répertoire /tmp
$> wget http://download.nvidia.com/XFree86/nforce/1.0-0261/NVIDIA_nforce-1.0-0261.src.rpm

2°/ Préparation des sources du noyau :

Vous avez différentes commandes à taper afin de pouvoir préparer les sources du noyau pour une compilation correcte des pilotes nforces. Ces commandes doivent être faites précisément ( respect casse et espces, … ). Si vous le pouvez faites juste un copier/coller.

$> cd /usr/src/linux<- on va dans le répertoire où se trouve les source du noyau. Il est crée lorsque vous installez le package kernel-source
$> make mrproper<- on nettoie les sources
$> cp /boot/config ./.config<- on récupère les options de configuration de l’ancien noyau ( ceux de mdk )
$> make oldconfig<- on compile selon cette version
$> make dep<- on initialise les dépendances entre modules/pilotes du noyau

 

Installation/Compilation

On va lancer la compilation des pilotes. Cela devrait aboutir à la création d’un rpm qu’il ne nous restera plus qu’a installer.

$> rpm –rebuild /tmp/NVIDIA_nforce-1.0-0261.src.rpm

Vous devriez obtenir la ligne suivante tous à la fin si tout s’est bien passé :

Wrote /usr/src/RPM/RPMS/i586/NVIDIA_nforce-1.0-0261.i586.rpm

Ensuite on installe le rpm crée qui contient les pilotes nforce compilé pour notre noyau

$> rpm -Uvh /usr/src/RPM/RPMS/i586/NVIDIA_nforce-1.0-0261.i586.rpm

 

Configuration

Carte son

Normalement la carte son peut être gére par le pilote alsa snd-intel8x0. Pour le vérifier, il suffit de lister les différentes cartes sons configurés et leurs pilotes gràace à la commande :

$> grep sound-slot /etc/modules.conf

Normalement vous devriez avoir ceci :

alias sound-slot-0 snd-intel8x0

Si vous avez plutôt ceci :

alias sound-slot-0 snd-intel8x0
alias sound-slot-1 nvaudio

c’est due au fait que le rpm qui a installé les pilotes nforce a configuré votre modules.conf. Il y a une entrée en trop. Si vous n’avez qu’une seule carte son, alors seul sound-slot-0 doit apparaitre.

Utiliser le pilote ALSA

pour utiliser le pilote ALSA, il faut enlever les références au pilote audio nvidia des nforce ( nvaudio ) et éventuellement à d’autres pilotes audio ( comme i810_audio qui est le pilote OSS ).
Pour cela il faut virer toutes les lignes contenant alias sound-slot-x nomdupilote et ne garder que la ligne contenant alias sound-slot-0 snd-intel8x0. Cette ligne signifie que la 1ère carte son ( sound-slot-0 ) est gérée par le pilote ALSA snd-intel8x0.
A la fin on doit avoir donc une ligne pour le pilote ALSA, et une ligne pour l’émulation OSS, soit :

alias sound-slot-0 snd-intel8x0
above snd-intel8x0 snd-pcm-oss

Note :
Si vous avez des lignes du type “above nompilote snd-pcm-oss” en plus de “above snd-intel8x0 snd-pcm-oss”, vous devez les virer afin d’éviter qu’elles n’entrent en conflit.

Utiliser le pilote nvaudio de NVIDIA

Si vous préférez utiliser le pilote nvaudio de NVIDIA, à ce moment il faut enlever toutes les références à d’autres cartes sons ( lignes commençant par sound-slot-x ou x est un numéro ), ainsi que les ligne du type above nompilote snd-pcm-oss.
Ensuite vous devez juste avoir une ligne disant que la 1ère carte son est gérée par le pilote nvaudio :

alias sound-slot-0 nvaudio

Vérification

On peut charger le pilote sans avoir à redémarrer, mais bon pour faire simple, vous redémarrer l’ordinateur et ensuite vous vérifiez que le pilote est bien chargé en tapant /sbin/lsmod | grep nompilote.
Ainsi pour vérifier si le pilote ALSA est bien utilisé vous faites :

alias sound-slot-0 nvaudio

Chez moi cela donne comme résultat :

[admin@admin3 admin]$ /sbin/lsmod | grep snd-intel8x0 snd-intel8x0     15296 1
snd-ac97-codec       52588 0 [snd-intel8x0]
snd-pcm           79652 0 [snd-pcm-oss snd-intel8x0]
snd-page-alloc     8628 0 [snd-intel8x0 snd-pcm]
snd-mpu401-uart    4704 0 [snd-intel8x0]
gameport          3284 0 [snd-intel8x0]
snd              43972 1 [snd-seq-oss snd-seq-midi-event snd-seq snd-pcm-oss snd-mixer-oss snd-intel8x0 snd-ac97-codec snd-pcm snd-timer snd-mpu401-uart snd-rawmidi snd-seq-device]

Note :
Si vous utilisez le pilote ALSA, n’oubliez d’enlever la propriétés muet pour Vol et PCM dans votre mixeur audio ( unmute ).

Carte Réseau

La chipset nforce sous la Mandrake 9.2 n’est pas géré nativement par le noyau. Dans la mandrake 10.0, le chipset réseau pourra être géré de base par le noyau gràce au pilote forcedeth qui sera intégré dans le noyau 2.4 et 2.6. Donc ce qui suit ne s’applique vraiment qu’à ceux ayant une mandrake dont la version est inférieure à la 10.0.

Tout d’abord vous devez vérifier que dans votre /etc/modules.conf il est spécifié que votre carte réseau doit utiliser le pilote nvnet.
Si vous n’avez q’une carte réseau, alors la 1ère carte réseau ( eth0 ) doit être associée au pilote nvnet, ce qui donne :

alias eth0 nvnet

Ensuite il ne vous reste plus qu’à charger le pilote puis à utiliser les outils de configuration de la mandrake qui désormais verra votre carte réseau.
Pour charger le pilote, il suffit de taper la commande suivante :

$> modprobe nvnet

up

Liens :

Où prendre les drivers :
http://www.nvidia.com/object/linux.html