Sophie

Sophie

distrib > Mandriva > 9.0 > i586 > by-pkgid > 0d5cd12c82d627a82c59047e1ba7b8a9 > files > 1253

howto-html-fr-9.0-0.2mdk.noarch.rpm

<HTML>
<HEAD>
<TITLE>Puis-je utiliser plus de deux ports s&eacute;rie&nbsp;?</TITLE>
</HEAD>
<BODY>
<A NAME="irqaddr"></A> <H1>8. <A NAME="s8"></A>Puis-je utiliser plus de deux ports s&eacute;rie&nbsp;?</H1>
<P>
<A HREF="Serial-HOWTO.html#toc8">Contenu de cette section</A></P>

<P>Il n'est pas n&eacute;cessaire que vous lisiez cette section, &agrave; moins
que vous utilisiez au moins trois ports s&eacute;rie... (mais pas sur
une carte multiports).</P>
<P>N'importe quel port s&eacute;rie libre est utilisable. La seule
limitation r&eacute;side dans le nombre d'interruptions (IRQ) et
d'adresses de port d'entr&eacute;e/sortie &agrave; utiliser.  Cette limitation
n'est pas sp&eacute;cifique &agrave; Linux, mais est due au bus du PC. Chaque
p&eacute;riph&eacute;rique s&eacute;rie (port s&eacute;rie, modem interne, carte s&eacute;rie) doit
poss&eacute;der ses propres interruption et adresse. </P>
<P>Les cartes s&eacute;rie multiports sont sp&eacute;cialement con&ccedil;ues pour
partager la m&ecirc;me interruption sur tous les ports qu'elles
poss&egrave;dent. Linux communique avec elles en s&eacute;lectionnant une
adresse d'entr&eacute;e/sortie diff&eacute;rente pour chaque port de ces
cartes.</P>
<P></P>
<H2>8.1 <A NAME="ss8.1"></A> Choisir les interruptions des p&eacute;riph&eacute;riques s&eacute;rie</H2>

<P>Par d&eacute;faut sur un PC, l'IRQ 4 est partag&eacute;e entre  <CODE>ttyS0</CODE> et
<CODE>ttyS2</CODE>, et l'IRQ 3 entre <CODE>ttyS1</CODE> et <CODE>ttyS3</CODE>. Les
interruptions en cours d'utilisation sont regroup&eacute;es dans
<CODE>/proc/interrupts</CODE>. Pour se servir de plus de deux ports
s&eacute;rie,  leur interruption doit &ecirc;tre r&eacute;assign&eacute;e, par exemple en
choisissant celle d'un port parall&egrave;le.   En effet, les IRQ 5 et
7 sont sur un PC normalement attribu&eacute;es aux ports parall&egrave;les,
mais peu de personnes en poss&egrave;dent deux. Vous pouvez donc
r&eacute;assigner une de ces interruptions &agrave; un port s&eacute;rie, et
continuer &agrave; utiliser joyeusement votre port parall&egrave;le&nbsp;!
Cette manipulation requiert le programme <CODE>setserial</CODE>. De
plus, il vous faudra ajuster certains cavaliers sur vos cartes
(&agrave; v&eacute;rifier sur les manuels des cartes) pour fixer les IRQ.</P>
<P>Vous devez vous arranger pour avoir une IRQ unique pour chacun
des ports s&eacute;rie. Voici comment je configure les miens dans
<CODE>/etc/rc.d/rc.local</CODE> (cette initialisation doit avoir
lieu lors du d&eacute;marrage)&nbsp;: 
<BLOCKQUOTE><CODE>
<PRE>
        /sbin/setserial /dev/ttyS0 irq 3        # ma souris
        /sbin/setserial /dev/ttyS1 irq 4        # mon terminal Wyse
        /sbin/setserial /dev/ttyS2 irq 5        # mon modem Zoom 
        /sbin/setserial /dev/ttyS3 irq 9        # mon modem USR
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Assignations standards des IRQ&nbsp;:
<PRE>
              IRQ  0    Base de temps 0
              IRQ  1    Clavier
              IRQ  2    Cascade pour le deuxieme controleur d'IRQ
              IRQ  3    Port serie 2
              IRQ  4    Port serie 1
              IRQ  5    Port parallele 2
              IRQ  6    Disquette
              IRQ  7    Port parallele 1
              IRQ  8    Horloge temps-reel (RTC)
              IRQ  9    Redirige vers l'IRQ2
              IRQ 10    Non assignee 
              IRQ 11    Non assignee
              IRQ 12    Non assignee
              IRQ 13    Coprocesseur mathematique
              IRQ 14    Controleur de disques durs 1
              IRQ 15    Controleur de disques durs 2
</PRE>
</P>
<P>Il n'existe pas vraiment de Bonne Technique pour choisir les
interruptions. Il faut juste s'assurer qu'elles ne sont pas d&eacute;j&agrave;
utilis&eacute;es par la carte m&egrave;re, ou une autre carte. 2, 3, 4, 5, ou
7 est g&eacute;n&eacute;ralement un bon choix.  ``Non assign&eacute;e'' signifie que
rien de standard n'utilise cette IRQ. Notez &eacute;galement que l'IRQ2
et l'IRQ9 sont identiques&nbsp;: vous pouvez donc sp&eacute;cifier
aussi bien 2 que 9, le gestionnaire de p&eacute;riph&eacute;riques est tr&egrave;s
compr&eacute;hensif. Si vous poss&eacute;dez une carte s&eacute;rie avec un
connecteur de bus 16 bits, vous pouvez &eacute;galement utiliser l'IRQ
10, 11, 12 ou 15.</P>
<P>N'utilisez pas les IRQ 0, 1, 6, 8, 13 et 14&nbsp;! Elles sont
r&eacute;serv&eacute;es par la carte m&egrave;re. Une fois le param&eacute;trage effectu&eacute;,
v&eacute;rifiez l'absence de conflit avec <CODE>/proc/interrupts</CODE>.</P>
<P></P>

<H2>8.2 <A NAME="ss8.2"></A> Choisir les adresses des p&eacute;riph&eacute;riques s&eacute;rie</H2>

<P>Vous devez ensuite fixer les adresses des ports. V&eacute;rifiez le
manuel pour la position des cavaliers. Comme pour les
interruptions, chaque p&eacute;riph&eacute;rique s&eacute;rie doit poss&eacute;der sa propre
adresse. Par d&eacute;faut, les ports sont param&eacute;tr&eacute;s de la mani&egrave;re
suivante&nbsp;:
<BLOCKQUOTE><CODE>
<PRE>
        ttyS0 adresse 0x3f8
        ttyS1 adresse 0x2f8
        ttyS2 adresse 0x3e8
        ttyS3 adresse 0x2e8
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Choisissez les adresses &agrave; affecter &agrave; chaque port s&eacute;rie, et
positionnez les cavaliers sur la carte en cons&eacute;quence. Ainsi,
j'ai mon modem sur <CODE>ttyS3</CODE>, ma souris sur <CODE>ttyS0</CODE>,
et mon terminal sur <CODE>ttyS2</CODE>.</P>
<P>Au prochain d&eacute;marrage, Linux devrait voir vos ports s&eacute;ries aux
adresses que vous avez s&eacute;lectionn&eacute;es. Par contre, les IRQ vues
par Linux peuvent ne pas correspondre avec celles que vous avez
configur&eacute;es. Ne vous inqui&eacute;tez pas&nbsp;: Linux ne sait pas
d&eacute;tecter les IRQ au d&eacute;marrage, car c'est assez al&eacute;atoire et le
r&eacute;sultat peut &ecirc;tre faux. Utilisez <CODE>setserial</CODE> pour sp&eacute;cifier
&agrave; Linux quelles interruptions sont associ&eacute;es aux ports, puis
v&eacute;rifiez apr&egrave;s red&eacute;marrage de Linux les adresses des ports
d'entr&eacute;e/sortie avec <CODE>/proc/ioports</CODE>.</P>
<P></P>

<HR>
<P>
Chapitre <A HREF="Serial-HOWTO-9.html">suivant</A>,
Chapitre <A HREF="Serial-HOWTO-7.html">Pr&eacute;c&eacute;dent</A>
<P>
Table des mati&egrave;res de <A HREF="Serial-HOWTO.html#toc8">ce chapitre</A>,
 <A HREF="Serial-HOWTO.html#toc">Table des mati&egrave;res</A> g&eacute;n&eacute;rale</P>
<P>
<A HREF="Serial-HOWTO.html">D&eacute;but</A> du document,
 <A HREF="#0"> D&eacute;but de ce chapitre</A></P>
</BODY>
</HTML>