zion - pcibios_find_class
Nom
pcibios_find_class, pcibios_find_device - trouver une classe ou un périphérique PCI
Résumé
#include <linux/bios32.h>
int pcibios_find_class(unsigned int class_code
", unsigned short " index ", unsigned char* " bus ", unsigned char* " device_fn ");" |
int pcibios_find_device(unsigned short vendor
", unsigned short " device_id ", unsigned short " index ", unsigned char* " bus ", unsigned char* " device_fn ");" |
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é :
|
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
Bugs
Poster un commentaire