Partager via


structure STOR_POFX_DEVICE_V2 (storport.h)

La structure STOR_POFX_DEVICE_V2 décrit les attributs d’alimentation d’un périphérique de stockage à l’infrastructure de gestion de l’alimentation (PoFx). Cette structure est similaire à STOR_POFX_DEVICE , mais contient des paramètres de délai d’expiration supplémentaires.

Syntaxe

typedef struct _STOR_POFX_DEVICE_V2 {
  ULONG               Version;
  ULONG               Size;
  ULONG               ComponentCount;
  ULONG               Flags;
  union {
    ULONG UnitMinIdleTimeoutInMS;
    ULONG AdapterIdleTimeoutInMS;
  };
  STOR_POFX_COMPONENT Components[ANYSIZE_ARRAY];
} STOR_POFX_DEVICE_V2, *PSTOR_POFX_DEVICE_V2;

Membres

Version

Numéro de version de cette structure. Définissez ce membre sur STOR_POFX_DEVICE_VERSION_V2.

Size

La taille de cette structure. Définissez cette valeur sur STOR_POFX_DEVICE_SIZE.

ComponentCount

Nombre d’éléments dans le tableau Composants . Définissez ce membre sur 1. Actuellement, un seul composant est pris en charge pour une carte de stockage ou une unité logique.

Flags

Indicateurs des fonctionnalités d’état d’alimentation de l’appareil. Le miniport définit un ou plusieurs indicateurs d’appareil PoFx pour activer ou désactiver les fonctionnalités d’état d’alimentation.

Flags est une combinaison OR au niveau du bit des éléments suivants.

Valeur Signification
STOR_POFX_DEVICE_FLAG_NO_D0
Demande qu’un IRP de mise sous tension ne soit pas envoyé à l’objet d’appareil pour l’adaptateur ou l’unité.
STOR_POFX_DEVICE_FLAG_NO_D3
Demande qu’un IRP de mise hors tension ne soit pas envoyé à l’objet d’appareil pour l’adaptateur ou l’unité.
STOR_POFX_DEVICE_FLAG_ENABLE_D3_COLD
Permet à Storport de définir l’état froid D3 de l’adaptateur s’il le prend en charge. Cet indicateur s’applique uniquement aux adaptateurs.
STOR_POFX_DEVICE_FLAG_NO_DUMP_ACTIVE
Le miniport n’est pas en mesure d’activer le périphérique de stockage en mode vidage si l’appareil est entré dans l’état d’inactivité ou de mise hors tension en cas d’inactivité. Cet indicateur indique si un appareil est disponible pour le vidage lorsqu’il est inactif.
STOR_POFX_DEVICE_FLAG_IDLE_TIMEOUT
La valeur de délai d’expiration dans UnitMinIdleTimeoutInMS ou AdapterIdleTimeoutInMS est utilisée pour le délai d’inactivité D3.

UnitMinIdleTimeoutInMS

Temps d’inactivité minimal en millisecondes pour une unité. Cette valeur n’est valide que lorsque STOR_POFX_DEVICE_FLAG_IDLE_TIMEOUT est défini dans Indicateurs.

AdapterIdleTimeoutInMS

Valeur de délai d’inactivité de l’adaptateur en millisecondes. Cette valeur n’est valide que lorsque STOR_POFX_DEVICE_FLAG_IDLE_TIMEOUT est défini dans Indicateurs.

Components[ANYSIZE_ARRAY]

Ce membre est le premier élément d’un tableau d’un ou plusieurs éléments STOR_POFX_COMPONENT . Si le tableau contient plusieurs éléments, les éléments supplémentaires suivent immédiatement la structure STOR_POFX_DEVICE . Le tableau contient un élément pour chaque composant de l’appareil. Actuellement, les périphériques de stockage n’ayant qu’un seul composant, des structures de composants supplémentaires ne sont pas nécessaires.

Remarques

Pour inscrire un adaptateur de stockage pour la prise en charge de Storport PoFx, le pilote miniport appelle StorPortEnablePassiveInitialization dans sa routine HwStorInitialize et implémente un HwStorPassiveInitializeRoutine. Le miniport appelle StorPortInitializePoFxPower dans son HwStorPassiveInitializeRoutine pour fournir des informations sur le composant de l’adaptateur.

Pour inscrire une unité de stockage pour la prise en charge de Storport PoFx, le pilote miniport implémente la routine de rappel HwStorUnitControl et assure la gestion du code de contrôle d’unité ScsiUnitPoFxPowerInfo . Lors de la gestion du code de contrôle ScsiUnitPoFxPowerInfo , le miniport appelle StorPortInitializePoFxPower si la gestion de l’alimentation inactive pour le composant d’unité est activée.

Composant du périphérique de stockage identifié par son index de tableau Composants . Les appareils de stockage n’ayant qu’un seul composant, l’index 0 est utilisé. Des routines telles que StorPortPoFxActivateComponent et StorPortPoFxIdleComponent utilisent l’index de tableau d’un composant pour identifier le composant.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge à partir de Windows 8.
En-tête storport.h

Voir aussi

STOR_POFX_COMPONENT

STOR_POFX_DEVICE

StorPortInitializePoFxPower

StorPortPoFxActivateComponent

StorPortPoFxIdleComponent