next up previous contents Next:  Port parallèle. Up:  Configuration de divers périphériques. Previous:  Configuration de divers périphériques.   Table des matières  


43.6.1  Son et pnpdump.

Les cartes son ISA (PnP ou Plug-and-Play) (cas des cartes SoundBlaster) sont parmi les plus populaires parmi les utilisateurs de LINUX. En l'occurence, nous utilisons une telle carte pour montrer comment configurer une carte PnP ISA en quelques minutes. Donc, ce dont nous parlons s'applique à d'autres cartes que les seules cartes son.

L'utilitaire isapnp prend un argument (le fichier /etc/isapnp.conf) et permet de configurer tous les périphériques PnP ISA sur les IRQ et ports E/S spécifiés dans ce fichier. Le fichier /etc/isapnp.conf est un peu complexe mais il peut être créé à l'aide de la commande pnpdump. pnpdump émet un fichier d'exemple sur stdout, qui contient les valeurs d'IRQ et de ports E/S associées à nos périphériques. Vous devez le modifier pour y supprimer les valeurs non-utilisées. Autrement, vous pouvez employer pnpdump -config pour obtenir un fichier /etc/isapnp.conf contenant les valeurs correctes d'IRQ, de ports E/S et de canaux DMA obtenus par analyse des entrées /proc. On pratique ainsi:

[root@cericon]# pnpdump -config | grep -v '^\(#.*\|\)$' > /etc/isapnp.conf 
[root@cericon]# isapnp /etc/isapnp.conf 
 
Board 1 has Identify c9 00 00 ab fa 29 00 8c Oe: CTL0029 Serial No 44026 [checksum c9] 
CTL0029/44026[0] {Audio       }: Ports 0x220 0x330 0x388; IRQ5 DMA1 DMA5 -- Enabled OK 
CTL0029/44026[1] {IDE         }: Ports 0x168 0x36E; IRQ10 -- Enables OK 
CTL0029/44026[2] {Game        }: Ports 0x200; -- Enabled OK 


ce qui permet de n'utiliser que deux commandes pour configurer toutes les cartes PnP ISA. Notez que le fichier /etc/isapnp.gone peut être employé pour faire en sorte que pnpdump évite d'utiliser certains ports E/S et IRQ. Voici un exemple de ce fichier:

IO 0x378,2 
IRQ 7 


qui permet d'éviter les conflits avec le port parallèle. La commande isapnp /etc/isapnp.conf doit être exécutée à chaque amorçage et devrait normalement être prête pour une utilisation par les scripts de démarrage.

A présent que votre carte ISA est identifiée, vous allez installer les modules nécessaires. Lisez le fichier /etc/isapnp.conf et la sortie d'isapnp ci-dessus de manière à référencer les ports d'E/S comme options:

alias sound-slot-0 sb 
alias sound-service-0-0 sb 
alias sound-service-0-1 sb 
alias sound-service-0-2 sb 
alias sound-service-0-3 sb 
alias sound-service-0-4 sb 
alias sound-synth-0 sb 
post-install sb /sbin/modprobe ``-k'' ``adlib_card'' 
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330 
options adlib_card io=0x388       # FM synthesizer 


A présent, lancez tail -f /var/log/messages /var/log/syslog, et sur un autre terminal:

depmod -a 
modprobe sb 


Si vous ne recevez pas d'erreur provenant du noyau (ou tout autre type d'erreur), vos périphériques sont désormais fonctionnels.

Maintenant, il est souhaitable que le chargement du module se fasse de manière dynamique. Enlevez tous les modules son avec rmmod -a (éventuellement, faites cette opération manuellement) et, ensuite, essayez:

aumix 


Dans le journal du noyau, vous devriez voir un message similaire à:

Sep 24 00:45:19 cericon kernel: SoundBlaster audio driver 
 Copyright (C) by Hannu Savolainen 1993-1996 
Sep 24 00:45:19 cericon kernel: SB 4.13 detected OK (240) 


A ce stade, lancez la commande:

playmidi <un_fichier>.mid 


Vous devriez voir dans le journal du noyau un message comme celui-ci:

Sep 24 00:51:34 cericon kernel: Soundblaster audio driver 
 Copyright (C) by Hannu Savolainen 1993-1996 
Sep 24 00:51:34 cericon kernel: SB 4.13 detected OK (240) 
Sep 24 00:51:35 cericon kernel: YM3812 and OPL-3 driver 
 Copyright (C) by Hannu Savolainen, Rob Hooft 1993-1996 


Si vous devez décommenter les lignes alias, un message tel que modprobe: Can't locate module sound-slot-0: devrait être émis. Ceci indique que le noyau essaye la commande /sbin/modprobe sound-slot-0, une procédure destinée à insérer une ligne alias. En réalité, sound-service-0-0,1,2,3,4 représente les périphériques /dev/mixer,sequencer,midi,dsp,audio, respectivement. Le terme sound-slot-0 désigne une carte qui devrait fournir tous ces services. L'option post-install indique qu'il faut réaliser une commande supplémentaire après l'installation du module, ceci pour prendre en compte le pilote du séquenceur Adlib. [...]


next up previous contents Next:  Port parallèle. Up:  Configuration de divers périphériques. Previous:  Configuration de divers périphériques.   Table des matières  
1-01-2006