Partager via


structure IDE_CONTROLLER_INTERFACE (irb.h)

La structure IDE_CONTROLLER_INTERFACE est utilisée pour transmettre les informations de configuration du contrôleur entre le pilote de port et le pilote miniport.

Note Les modèles de pilote de port ATA et de pilote miniport ATA peuvent être modifiés ou indisponibles à l’avenir. Au lieu de cela, nous vous recommandons d’utiliser les modèles de pilote Storport et de pilote Miniport Storport .
 

Syntaxe

typedef struct _IDE_CONTROLLER_INTERFACE {
  USHORT                   Version;
  USHORT                   Reserved;
  ULONG                    ControllerExtensionSize;
  ULONG                    ChannelExtensionSize;
  ULONG                    AlignmentMask;
  IDE_CHANNEL_INIT         AtaChannelInitRoutine;
  IDE_CHANNEL_ENABLED      AtaControllerChannelEnabled;
  IDE_TRANSFER_MODE_SELECT AtaControllerTransferModeSelect;
  IDE_ADAPTER_CONTROL      AtaAdapterControl;
} IDE_CONTROLLER_INTERFACE, *PIDE_CONTROLLER_INTERFACE;

Membres

Version

Le pilote de port définit ce champ pour indiquer la version du pilote de port. Le pilote de port définit la version sur sizeof(IDE_CONTROLLER_INTERFACE). Le pilote miniport doit vérifier que la version est supérieure ou égale à celle qu’il utilise.

Reserved

Réservé pour un usage futur. Le pilote miniport ne doit pas utiliser ce champ.

ControllerExtensionSize

Spécifie la taille en octets requise par un pilote miniport pour son extension de périphérique de contrôleur.

ChannelExtensionSize

Spécifie la taille en octets requise par un pilote miniport pour son extension de périphérique par canal.

AlignmentMask

Contient un masque indiquant les restrictions d’alignement pour les mémoires tampons requises par l’adaptateur HBA pour les opérations de transfert. Les valeurs de masque valides sont également limitées par les caractéristiques des gestionnaires de mémoire sur différentes versions de Windows. Sous Windows 2000 et Windows XP, les valeurs de masque valides sont 0 (aligné sur les octets), 1 (aligné sur les mots), 3 (aligné sur DWORD) et 7 (double aligné sur DWORD). Le pilote miniport doit définir ce masque si l’adaptateur HBA prend en charge la diffusion/la collecte.

AtaChannelInitRoutine

Pointeur vers la routine AtaChannelInitRoutine du miniport. Le miniport doit définir ce point d’entrée uniquement s’il prend en charge l’interface canal.

AtaControllerChannelEnabled

Pointeur vers la routine AtaControllerChannelEnabled du miniport. Il s’agit d’un point d’entrée facultatif.

AtaControllerTransferModeSelect

Pointeur vers la routine AtaControllerTransferModeSelect du miniport. Il s’agit d’un point d’entrée facultatif.

AtaAdapterControl

Pointeur vers la routine AtaControllerAdapterControl du miniport. Il s’agit d’un point d’entrée obligatoire.

Configuration requise

Condition requise Valeur
En-tête irb.h (inclure Irb.h)