Partager via


StorPortGetBusData, fonction (storport.h)

La routine StorPortGetBusData récupère les informations de configuration spécifiques au bus nécessaires pour initialiser l’adaptateur HBA.

Syntaxe

STORPORT_API ULONG StorPortGetBusData(
  [in]      PVOID DeviceExtension,
  [in]      ULONG BusDataType,
  [in]      ULONG SystemIoBusNumber,
  [in]      ULONG SlotNumber,
  [in, out] PVOID Buffer,
  [in]      ULONG Length
);

Paramètres

[in] DeviceExtension

Pointeur vers la zone de stockage par HBA du pilote miniport.

[in] BusDataType

Contient une valeur de type BUS_DATA_TYPE qui spécifie le type de données de configuration spécifiques au bus à retourner. Actuellement, cette valeur peut être l’une des suivantes : Cmos, EisaConfiguration, Pos ou PCIConfiguration. Toutefois, d’autres types de configuration de bus seront pris en charge à l’avenir. La limite supérieure sur les types pris en charge est toujours MaximumBusDataType.

[in] SystemIoBusNumber

Spécifie le numéro attribué par le système du bus d’E/S. La routine HwStorFindAdapter du pilote miniport obtient cette valeur du membre SystemIoBusNumber initialement défini dans PORT_CONFIGURATION_INFORMATION.

[in] SlotNumber

Spécifie le numéro d’emplacement logique ou l’emplacement de l’appareil.

Si PCIConfiguration est spécifié en tant que BusDataType, ce paramètre doit être spécifié en tant que valeur de type PCI_SLOT_NUMBER.

[in, out] Buffer

Pointeur vers une mémoire tampon ou une zone vers laquelle les données de configuration sont retournées ou, si la longueur donnée est égale à zéro, pointe vers un emplacement vers lequel le pilote de port spécifique au système d’exploitation retourne un pointeur vers une mémoire tampon qu’il alloue.

[in] Length

Spécifie le nombre maximal d’octets à retourner dans Buffer, ou zéro si l’appelant exige que le pilote de port spécifique au système d’exploitation alloue une mémoire tampon pour contenir les données.

Valeur retournée

StorPortGetBusData retourne le nombre d’octets d’informations de configuration stockées dans la mémoire tampon. Lorsque l’entrée BusDataType est PCIConfiguration, StorPortGetBusData peut retourner l’une des valeurs suivantes pour indiquer une erreur.

Code de retour Description
0 (zéro) Le bus PCI n’existe pas.
2 Le bus PCI existe, mais il n’existe aucun appareil au niveau du numéro d’emplacement PCI donné. La mémoire tampon contient la valeur PCI_INVALID_VENDOR_ID au PCI_COMMON_CONFIG membre VendorId .

Remarques

Un pilote miniport peut appeler StorPortGetBusData à partir des routines suivantes :

Les appels d’autres routines de pilotes miniport entraînent une défaillance du système ou une opération incorrecte pour l’appelant.

Les données de configuration retournées par StorPortGetBusData ne sont valides que jusqu’à ce que le pilote miniport appelle à nouveau StorPortGetBusData . Dès que la routine HwStorFindAdapter de l’appelant retourne le contrôle, toutes les données de configuration retournées ne sont plus valides.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête storport.h (inclure Storport.h)
Bibliothèque Storport.lib

Voir aussi

HwStorAdapterControl

HwStorFindAdapter

PORT_CONFIGURATION_INFORMATION

SCSI_ADAPTER_CONTROL_TYPE