|
Voici comment repérer
simplement les éventuels conflits entre périphériques. Les 3 paramètres de
base sont :
- les ports
d'entrées/sorties :
Ils sont utilisés pour l'échange de données entre le logiciel de pilotage et
l'électronique du périphérique. Le jeu de composants SIEMENS dans notre
cas.
- les interruptions
:
Chaque PC possède au moins 16 entrées d'interruptions. Ces entrées sont
utilisées par l'électronique du périphérique pour demander
l'interruption du programme en cours lorsqu'un paquet IP arrive sur la
ligne téléphonique par exemple.
- les canaux de dma
:
Ces canaux d'accès direct en mémoire servent à échanger des données rapidement
en s'affranchissant du contrôle du microprcesseur.
Pour connaître les
ressources déjà réservées sur votre machine, il faut lister le contenu des
fichiers dans le répertoire /proc.
Voici, à titre d'exemple, ce
que j'ai obtenu sur différentes configurations :
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
0240-025f : HiSax hscx A
02f8-02ff : serial(auto)
0330-0333 : aha1542
0378-037f : parport0
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0443-0443 : Acquire WDT
3000-3007 : ide0
3008-300f : ide1
4240-425f : HiSax hscx B
8240-825f : HiSax isac
c240-c247 : gazel cfg
|
|
CPU0
0: 165559 XT-PIC timer
1: 11123 XT-PIC keyboard
2: 0 XT-PIC cascade
4: 8529 XT-PIC serial
8: 1 XT-PIC rtc
9: 5 XT-PIC HiSax
11: 6627 XT-PIC aha1542
13: 1 XT-PIC fpu
14: 61159 XT-PIC ide0
NMI: 0
|
|
PCI devices found:
Bus 0, device 0, function 0:
Host bridge: Intel 82437 (rev 2).
Medium devsel. Master Capable. Latency=32.
Bus 0, device 7, function 0:
ISA bridge: Intel 82371FB PIIX ISA (rev 2).
Medium devsel. Fast back-to-back capable. Master Capable. No bursts.
Bus 0, device 7, function 1:
IDE interface: Intel 82371FB PIIX IDE (rev 2).
Medium devsel. Fast back-to-back capable. Master Capable. Latency=32.
I/O at 0x3000 [0x3001].
Bus 0, device 18, function 0:
Network controller: PLX Unknown device (rev 1).
Vendor id=10b5. Device id=1152.
Medium devsel. Fast back-to-back capable. IRQ 12.
Non-prefetchable 32 bit memory at 0xf4000000 [0xf4000000].
I/O at 0x6000 [0x6001].
I/O at 0x6100 [0x6101].
Bus 0, device 19, function 0:
VGA compatible controller: S3 Inc. ViRGE (rev 6).
Medium devsel. IRQ 10. Master Capable. Latency=32. Min Gnt=4.Max Lat=255.
Non-prefetchable 32 bit memory at 0xf0000000 [0xf0000000].
Bus 0, device 20, function 0:
SCSI storage controller: AMD 53C974 (rev 16).
Medium devsel. IRQ 11. Master Capable. Latency=32. Min Gnt=4.Max Lat=40.
I/O at 0x6200 [0x6201].
|
|
Tous ces éléments changent
d'une machine à l'autre bien sûr.
Sur certains BIOS de
certaines machines et pas toujours par temps de brouillard, on peut
rencontrer ce genre de messages :
kernel: Gazel: Driver Revision 0.5
kernel: Gazel: PCI card automatic recognition
kernel: Gazel: Card PCI R753 found
kernel: Gazel: config irq:10 ipac:0x1010 cfg:0x1080
kernel: Gazel: Gazel ipac ports 1010-10f0 already in use
kernel: HiSax: Card Gazel not installed !
|
|
L'option [PLUG AND PLAY
BIOS] est sensible. Suivant que l'on active ou désactive cette option la
carte Djinn/Gazel est soit reconnue normalement soit donnée comme ressource
occupée.
On rencontre des difficultés
avec les BIOS PnP.
Karsten Keil, le
responsable du module hisax a rencontré les mêmes difficultés avec des cartes
ELSA et BeWan. Il propose un module supplémentaire appellé pcitst qui
teste les entrées-sorties avant le chargement du pilote
hisax.
Claude Mahé a rédigé quelques lignes
sur l'utilisation de ce module :
| 12/1999 |
Utilisation du module
pcitst |
- Récupérer le fichier
pcitst.tgz à partir de la rubrique téléchargement
- "Détarer" le fichier qui
contient un Makefile et un source C :
- Modifier le source du
fichier pcitst.c comme suit :
avant modification :
/* PCI stuff */
après modification
/* PCI stuff */
|
|
La modification consiste
donc à indiquer les caractéristiques de la carte Gazel en lieu et place de la
carte "ELSA".
- Compiler le source en se
plaçant dans le répertoire qui contient pcitst.c :
Le make renvoie chez moi une
"bordée d'injures" (du style "undefined reference to 'prink', undefined
reference to 'pcibios_write_config_dword'", etc...) mais il crée quand même le
fichier pcitst.o Il est maintenant possible de faire un :
pour pré-initialiser
correctement le chip PLX de la carte Gazel. A noter que là encore la commande
renvoie une erreur, mais il semble que cela soit "normal" cette fois ! A
partir de maintenant on peut tenter ;-) le chargement des modules Hisax et
Isdn (pour plus de détails voir les pages Philippe) Afin d'éviter de charger
ce module à la "main", j'ai fait ensuite :
- Copie du module dans
/usr/local/bin :
mv pcitst.o /usr/local/bin/gazel-init.o
|
|
- Ajout dans le fichier
/sbin/init.d/boot.local la ligne suivante :
/sbin/insmod /usr/local/bin/gazel-init.o>/dev/null
|
|
|
|
|