Fonction ScsiPortFreeDeviceBase (srb.h)
La routine ScsiPortFreeDeviceBase libère une plage d’adresses d’E/S d’appareil ou d’espace mémoire précédemment mappées à l’espace d’adressage système avec ScsiPortGetDeviceBase.
Syntaxe
SCSIPORT_API VOID ScsiPortFreeDeviceBase(
[in] PVOID HwDeviceExtension,
[in] PVOID MappedAddress
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension de périphérique matériel. Il s’agit d’une zone de stockage par adaptateur HBA que le pilote de port alloue et initialise pour le compte du pilote miniport. Les pilotes miniport stockent généralement des informations spécifiques à L’adaptateur HBA dans cette extension, telles que l’état de l’adaptateur HBA et les plages d’accès mappées de l’adaptateur HBA. Cette zone est disponible pour le pilote miniport dans le membre DeviceExtension-HwDeviceExtension> de l’objet d’appareil de l’adaptateur HBA immédiatement après que le pilote miniport a appelé ScsiPortInitialize. Le pilote de port libère cette mémoire lorsqu’il supprime l’appareil.
[in] MappedAddress
Pointeur vers l’adresse de base de la plage à libérer. Cette adresse doit être identique à celle retournée par ScsiPortGetDeviceBase.
Valeur de retour
None
Remarques
Si la routine HwScsiFindAdapter d’un pilote miniport détermine que le pilote n’a pas besoin d’une adresse de base mappée particulière pour une carte, il doit libérer le mappage en appelant cette routine. Par exemple, lorsqu’un pilote miniport détermine qu’aucun adaptateur HBA n’est pris en charge sur un bus d’E/S particulier, il doit appeler ScsiPortFreeDeviceBase avec chaque adresse mappée retournée par ScsiPortGetDeviceBase, si des appels à cette routine ont été effectués.
ScsiPortFreeDeviceBase peut être appelé uniquement à partir de la routine HwScsiFindAdapter du pilote miniport. Les appels d’autres routines de pilotes miniport entraînent une défaillance du système ou un fonctionnement incorrect pour l’appelant.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | srb.h (inclure Miniport.h, Scsi.h) |
Bibliothèque | Scsiport.lib |