Scroll to navigation

PCIBIOS_FIND_CLASS(9) Fonctions du noyau Linux PCIBIOS_FIND_CLASS(9)

NOM

pcibios_find_class, pcibios_find_device - Trouver une classe ou un périphérique PCI

SYNOPSIS

#include <linux/bios32.h>

DESCRIPTION

La fonction pcibios_find_class recherche une classe ou un périphérique PCI particulier sur le bus PCI. class représente une catégorie de périphériques : storage, network, display, et memory. Les classes sont définies par les spécifications du bus PCI. Le class_code est recherché dans le double mot situé à l'adresse 0x08 dans l'espace mémoire de configuration du périphérique.

La fonction pcibios_find_device recherche un périphérique sur le bus PCI qui corresponde aux numéros de périphériques et de vendeur. Les identifications de périphériques sont assignées à la signature PCI. Les vendeurs choisissent eux-même les « numéros d'identité » des périphériques qu'ils développent. Les numéros de vendeur et d'identité du périphérique sont stockés dans le double mot 0x00 dans la mémoire de configuration.

pcibios_find_class et pcibios_find_device possèdent un paramètre supplémentaire index , qui est utilisé pour sélectionner le périphérique indiqué s'il y a plusieurs périphériques trouvés. Un index 0 sélectionne le premier périphérique trouvé, 1 le second, etc.

Les paramètres bus et device_fn sont des cookies spécifiques au PCI et sont passés aux autres fonctions pcibios pour avoir accès à l'espace mémoire de configuration PCI ou le périphérique concerné.

VALEUR RENVOYÉE

En cas de succès, ces fonctions renvoient PCIBIOS_SUCCESSFUL. Sinon, l'un des codes d'erreur suivants est renvoyé :

Aucun périphérique ne correspond aux critères de recherche,
Le numéro d'identification du vendeur n'est pas valide (0xffff n'est pas une identification valide).
Le sous-sytème PCI n'est pas accessible ; il n'existe probablement pas.

DISPONIBILITÉ

Linux 1.0+

VOIR AUSSI

pcibios_present(9)

/usr/include/linux/pci.h, /usr/include/linux/bios32.h

PCI Local Bus Specification

AUTEUR

Kirk Petersen (kirk@speakeasy.org)

TRADUCTION

Thierry Vignaud <tvignaud@mandrakesoft.com>, 1999

BOGUES

19 mars 1999 Linux