4. Paramètres de démarrage pour les Périphériques SCSI

Contenu de cette section

Cette section contient une description des paramètres de démarrage qui sont utilisés pour passer des informations concernant les adaptateurs hôtes et les périphériques SCSI.

Notations utilisées dans cette section :

iobase -- Le premier port d'Entrée/Sortie que le serveur SCSI occupe. Ceux-ci sont donnés en notation hexadécimale, et sont généralement situés dans la fourchette 0x200 à 0x3ff.

irq -- L'interruption matérielle pour laquelle la carte a été configurée. Les valeurs autorisées dépendront de la carte en question, mais seront généralement 5, 7, 9, 10, 11, 12, et 15. Les autres valeurs étant généralement utilisées pour les périphériques courants comme les disques durs IDE, les lecteurs de disquettes, les ports série, etc.

scsi-id -- L'identifiant que la carte-serveur utilise pour s'identifier elle-même sur le bus SCSI. Un certain nombre de cartes serveur vous permettront de modifier cette valeur, alors que d'autres ont cette valeur stockée de façon définitive sur la carte. La valeur par défaut la plus courante est sept, mais les cartes Seagate et Future Domain TMC-950 par exemple utilisent la valeur six.

parity -- Détermine si la carte serveur SCSI doit demander aux périphériques connectés de fournir une valeur de parité avec tous les échanges d'information. La valeur 1 indique que la détection de parité est activée, et la valeur 0 désactive le contrôle de parité. Encore une fois, toutes les cartes ne supportent pas la sélection du contrôle de parité par les paramètres de démarrage.

4.1 Nombre maximum de LUN contrôlés (`max_scsi_luns=')

Chaque périphérique SCSI peut avoir un nombre de `sous-périphériques' qui le composent. L'exemple le plus courant est représenté par les nouveaux CD-ROM SCSI qui utilisent plus d'un disque à la fois grâce à un chargeur de CD. Chaque CD est adressable comme un `Logical Unit Number' (LUN = Numéro d'Unité Logique) de ce périphérique multiple. Mais la plupart des périphériques comme les disques durs, les lecteurs de bande et autres, sont des périphériques simples et on leur attribue le LUN zéro.

Le problème survient avec les périphériques à un seul LUN qui ont un mauvais microprogramme. Certains périphériques SCSI mal conçus (anciens et malheureurement nouveaux aussi) ne supportent pas d'être testés pour des LUN différents de zéro. Ils répondent en se bloquant, et peuvent aussi verrouiller tout le bus SCSI en même temps.

Les nouveaux noyaux ont une option de configuration qui vous permet d'indiquer le nombre maximum de LUN à tester. Par défaut, ils ne testent que le LUN zéro, pour éviter le problème décrit ci-dessus.

Pour spécifier le nombre de LUN à tester au moment du démarrage, il suffit d'entrer le paramètre de démarrage `max_scsi_luns=n', où n est un nombre compris entre un et huit. Pour éviter les problèmes décrits précédemment, on peut utiliser n=1 pour éviter de perturber les périphériques défectueux.

4.2 Paramètres pour les Lecteurs de Bande SCSI (`st=')

Certaines configurations de démarrage pour les lecteurs de bande SCSI peuvent être obtenues en utilisant ce qui suit :


        st=buf_size[,write_threshold[,max_bufs]]

Les deux premiers nombres sont donnés en kilo-octets. La valeur par défaut du buf_size est 32 ko, et la taille maximum qui peut être donnée est la valeur ridicule de 16384 ko. La zone write_threshold est la valeur à laquelle le tampon est envoyé vers la bande, avec une valeur par défaut de 30ko. Le nombre maximum de tampons varie en fonction du nombre de lecteurs détectés, et a une valeur par défaut égale à deux. Voici un exemple d'utilisation :


        st=32,30,2

Des indications plus précises peuvent être trouvées dans le fichier README.st qui est dans le répertoire scsi de l'arborescence des sources du noyau.

4.3 Adaptec aha151x, aha152x, aic6260, aic6360, SB16-SCSI (`aha152x=')

Les valeurs aha font référence à des cartes et les valeurs aic font référence aux puces SCSI actuelles de ce type de cartes, y compris la Soundblaster-16 SCSI.

Le code de test de ces serveurs SCSI recherche s'il existe un BIOS installé, et s'il n'est pas présent, le test ne trouvera pas votre carte. Vous aurez alors à utiliser le paramètre de démarrage avec la syntaxe suivante :


         aha152x=iobase[,irq[,scsi-id[,reconnect[,parity]]]]

Notez que si le pilote a été compilé avec l'option de recherche d'erreur activée, une sixième valeur peut être spécifiée pour fixer le niveau de recherche d'erreur.

Tous les paramètres sont décrits au début de cette section, et la valeur reconnect permet au périphérique de se déconnecter/reconnecter si une valeur différente de zéro est utilisée. Voici un exemple d'utilisation :


        aha152x=0x340,11,7,1

Notez que les paramètres doivent être donnés dans l'ordre, ce qui signifie que si vous désirez spécifier une configuration de parité, vous devrez alors indiquer les valeurs de iobase, irq, scsi-id et reconnect aussi.

4.4 Adaptec aha154x (`aha1542=')

Ce sont les gammes de cartes aha154x. Les différentes cartes aha1542 ont un contrôleur de disquette i82077 en interne, tandis que les cartes de la série aha1540 n'en ont pas. Ce sont des cartes à "busmastering", (contrôle de bus) et elles ont des paramètres qui permettent d'indiquer le niveau ``d'équité'' qui est utilisé pour partager le bus avec les autres périphériques. Le paramètre de démarrage ressemble à ce qui suit.


        aha1542=iobase[,buson,busoff[,dmaspeed]]

Les valeurs couramment utilisées pour iobase sont les suivantes : 0x130, 0x134, 0x230, 0x234, 0x330, 0x334. Des clones de cartes autorisent d'autres valeurs.

Les valeurs buson, busoff indiquent le nombre de microsecondes pendant lesquelles la carte est prioritaire sur le bus ISA. Les valeurs par défaut sont 11 μs prioritaire, et 4 μs non prioritaire, de façon que d'autres cartes (comme une carte Ethernet ISA LANCE) aient une chance d'avoir accès au bus ISA.

La valeur dmaspeed fait référence à la vitesse (en Mo/s) à laquelle s'effectue le transfert DMA (Direct Memory Access, Mémoire à Accès Direct). La valeur par défaut est 5 Mo/s. Les nouvelles versions de ces cartes vous permettent de sélectionner cette valeur de façon logicielle alors que les anciennes cartes utilisait des cavaliers. Vous pouvez utiliser des valeurs allant jusqu'à 10 Mo/s en supposant que votre carte mère soit capable de les supporter. Expérimentez prudemment si vous utilisez des valeurs supérieures à 5 Mo/s.

4.5 Adaptec aha274x, aha284x, aic7xxx (`aic7xxx=')

Ces cartes peuvent recevoir un paramètre selon la syntaxe suivante :


        aic7xxx=extended,no_reset

La valeur de extended, si elle est différente de zéro, indique que la traduction étendue pour les disques de grande capacité est activée. La valeur no_reset, si elle est différente de zéro, indique au pilote de ne pas réinitialiser le bus SCSI lorsqu'il configure la carte-serveur au démarrage.

4.6 Les hôte SCSI BusLogic (`buslogic=')

Pour l'instant, les pilotes buslogic n'acceptent qu'un seul paramètre, qui est l'adresse d'entrée/sortie. Elle doit être l'une des valeurs suivantes : 0x130, 0x134, 0x230, 0x234, 0x330, 0x334.

4.7 Future Domain TMC-8xx, TMC-950 (`tmc8xx=')

Le code de test pour ces hôtes SCSI recherche un BIOS installé, et s'il n'en détecte aucun, le test ne trouvera pas votre carte. Ou si la signature de votre BIOS n'est pas reconnue, elle ne sera pas trouvée non plus. Dans ce cas, vous aurez à utiliser un paramètre de démarrage de la forme :


        tmc8xx=mem_base,irq

La valeur mem_base est l'adresse dans le plan mémoire de la région d'entrée/sortie utilisée par la carte. C'est généralement une des valeurs suivantes : 0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000.

4.8 Pro Audio Spectrum (`pas16=')

La PAS16 utilise une puce NC5380 SCSI, et les nouveaux modèles peuvent être configurés de façon logicielle. La syntaxe du paramètre est la suivante :


        pas16=iobase,irq

La seule différence est que vous pouvez spécifier une valeur d'IRQ égale à 255, qui indique au pilote de travailler sans utiliser les interruptions, malheureusement au détriment des performances. La valeur de iobase est généralement 0x388.

4.9 Seagate ST-0x (`st0x=')

Le code du programme de test de cet hôte SCSI recherche un BIOS installé, et s'il n'y en a aucun de présent, le test ne trouvera pas votre carte. Ou si la signature de votre BIOS n'est pas reconnue elle ne sera pas trouvée non plus. Dans ce cas, vous aurez à utiliser le paramètre suivant :


        st0x=mem_base,irq

La valeur de mem_base est l'adresse dans le plan mémoire de la région d'entrée/sortie utilisée par la carte. En général, il s'agit d'une des valeurs suivantes : 0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000.

4.10 Trantor T128 (`t128=')

Cette carte est aussi conçue autour de la puce NCR5380, et accepte les options suivantes :


        t128=mem_base,irq

Les valeurs autorisées pour mem_base sont les suivantes : 0xcc000, 0xc8000, 0xdc000, 0xd8000.

4.11 Cartes n'acceptant pas les paramètres de démarrage

Pour l'instant, les cartes SCSI suivantes n'utilisent aucun des paramètres de démarrage. Dans certains cas, vous pouvez "bricoler" les valeurs en éditant directement le pilote lui-même, si cela est nécessaire bien sûr.

Always IN2000, Adaptec aha1740, EATA-DMA, EATA-PIO, Future Domain 16xx, NCR5380 (generic), NCR53c7xx à NCR53c8xx, Qlogic, Ultrastor (incl. u?4f), Western Digital wd7000,


Chapitre suivant, Chapitre Précédent

Table des matières de ce chapitre, Table des matières générale

Début du document, Début de ce chapitre