structure PCI_SLOT_NUMBER (wdm.h)
La structure PCI_SLOT_NUMBER est obsolète. Il définit le format du paramètre de d’emplacement aux routines HalXxxBusData lorsqu’elles sont appelées avec la valeur BusDataType PCIConfiguration.
Syntaxe
typedef struct _PCI_SLOT_NUMBER {
union {
struct {
ULONG DeviceNumber : 5;
ULONG FunctionNumber : 3;
ULONG Reserved : 24;
} bits;
ULONG AsULONG;
} u;
} PCI_SLOT_NUMBER, *PPCI_SLOT_NUMBER;
Membres
u
u.bits
Spécifie l’appareil particulier sur un adaptateur multifonction à l’emplacement donné en cours de configuration. L'DeviceNumber indique le numéro d’emplacement logique de l’adaptateur ; la FunctionNumber indique l’appareil particulier sur cet adaptateur.
u.bits.DeviceNumber
u.bits.FunctionNumber
u.bits.Reserved
u.AsULONG
Spécifie le numéro d’emplacement logique de l’appareil en cours de configuration.
Remarques
Les pilotes d’appareils PCI peuvent appeler HalGetBusData ou HalGetBusDataByOffset plus d’une fois pour le même numéro d’emplacement pour obtenir les informations de configuration de leurs appareils.
Par exemple, un pilote peut rechercher des appareils qu’il prend en charge sur tous les bus PCI de la machine d’abord, puis appeler HalGetBusData(ByOffset)
de nouveau pour demander plus d’informations de configuration sur les appareils qui vous intéressent. Un tel pilote peut coder une boucle qui appelle HalGetBusData(ByOffset)
avec un Buffer
d’entrée d’une Length
suffisante uniquement pour contenir suffisamment de PCI_COMMON_CONFIG pour déterminer les VendorID
et les DeviceID
de chaque périphérique PCI. Après avoir trouvé les numéros de Slot
pour tous les périphériques PCI prometteurs, le pilote appelle HalGetBusData ou HalGetBusDataByOffset une ou plusieurs fois avec un espace tampon supplémentaire pour obtenir les informations nécessaires pour configurer ses appareils.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Miniport.h) |