struttura STOR_POFX_COMPONENT_V2 (storport.h)

La struttura STOR_POFX_COMPONENT_V2 descrive gli attributi dello stato di alimentazione di un componente del dispositivo di archiviazione.

Sintassi

typedef struct _STOR_POFX_COMPONENT_V2 {
  ULONG                          Version;
  ULONG                          Size;
  ULONG                          FStateCount;
  ULONG                          DeepestWakeableFState;
  GUID                           Id;
  ULONG                          DeepestAdapterPowerRequiredFState;
  ULONG                          DeepestCrashDumpReadyFState;
  STOR_POFX_COMPONENT_IDLE_STATE FStates[ANYSIZE_ARRAY];
} STOR_POFX_COMPONENT_V2, *PSTOR_POFX_COMPONENT_V2;

Members

Version

Numero di versione di questa struttura. Impostare questo membro su STOR_POFX_DEVICE_VERSION_V2.

Size

Dimensione della struttura. Impostare questo valore su STOR_POFX_COMPONENT_V2_SIZE.

FStateCount

Numero di elementi nella matrice a cui fa riferimento il membro FStates . Inoltre, questo membro specifica il numero di stati di alimentazione funzionale (stato F) supportati dal componente. Un componente deve supportare almeno uno stato F (F0).

DeepestWakeableFState

Indice dello stato F più profondo da cui il componente può riattivarsi. Specificare 0 per F0, 1 per F1 e così via. Questo indice deve essere minore di FStateCount.

Id

ID componente che identifica in modo univoco questo componente rispetto agli altri componenti del dispositivo. Il driver deve specificare un valore diverso da zero per questo membro se il framework di gestione energia (PoFx) richiede un ID componente per distinguere questo componente da altri componenti simili nello stesso dispositivo. Gli ID componente supportati da Storport sono STORPORT_POFX_ADAPTER_GUID (identifica un adattatore) e STORPORT_POFX_LUN_GUID (identifica un'unità).

DeepestAdapterPowerRequiredFState

Il più profondo stato F-State in cui questo componente può essere in cui l'adattatore richiede ancora alimentazione. Questo è rilevante solo per i componenti il cui ID è STOR_POFX_LUN_GUID.

DeepestCrashDumpReadyFState

Il più profondo F-State in cui il componente può essere in cui il miniport può attivare il componente in caso di arresto anomalo si verifica un arresto anomalo e deve essere scritto un dump di arresto anomalo.

FStates[ANYSIZE_ARRAY]

Matrice di strutture STOR_POFX_COMPONENT_IDLE_STATE . La lunghezza di questa matrice viene specificata dal membro FStateCount . Ogni elemento matrice specifica gli attributi di uno stato F supportato dal componente. L'elemento 0 descrive F0, elemento 1 descrive F1 e così via. Quando sono necessarie più strutture di stato inattive, le strutture aggiuntive vengono allocate alla fine della struttura STOR_ POFX_COMPONENT_V2 e FStateCount è impostata su 1, ovvero il valore di ANYSIZE_ARRAY, oltre al conteggio delle strutture aggiuntive.

Commenti

Quando un driver miniport registra un dispositivo con il framework di gestione energia Storport, il driver miniport fornisce una struttura STOR_POFX_DEVICE che contiene le informazioni di registrazione. Questa struttura contiene una matrice di strutture STOR_ POFX_COMPONENT . Gli elementi di questa matrice descrivono gli attributi di potenza dei singoli componenti nel dispositivo. Le impostazioni di alimentazione di questi componenti vengono gestite in base alle informazioni contenute in questa matrice.

Il membro ID contiene un ID componente che identifica in modo univoco un componente. L'ID componente non corrisponde all'indice del componente, che una routine come StorPortPoFxActivateComponent usa per identificare un componente in un dispositivo registrato. Un indice componente è un indice nella matrice Components nella struttura STOR_POFX_DEVICE che il driver del dispositivo usato per registrare il dispositivo. Se la matrice Components contiene N elementi, gli indici dei componenti sono valori interi nell'intervallo 0-1. Al contrario, un ID componente è un valore GUID.

L'ID per il componente dispositivo adattatore singolo viene definito in storport.h come STORPORT_POFX_ADAPTER_GUID. L'ID per il componente singolo dispositivo è STORPORT_POFX_LUN_GUID. Usare questi identificatori quando si descrive un componente adattatore o un componente unità nel membro ID .

I requisiti di stato F sono i seguenti:

  • Per un componente dispositivo adattatore, il miniport deve specificare un singolo componente e fino a otto stati F per l'adattatore. StorPortInitializePoFxPower deve essere chiamato dal miniport solo nel contesto della routine di inizializzazione passiva del miniport.
  • Per un componente dispositivo unità, il miniport deve specificare un singolo componente per l'unità e può specificare fino a due stati F. Il dispositivo unità deve avere lo stato F0 specificato e può facoltativamente avere uno stato F aggiuntivo. StorPortInitializePoFxPower deve essere chiamato dal miniport solo nel contesto del controllo unità SCSIUnitPoFxPowerInfo del miniport.

Per un componente dispositivo unità, se nella matrice FStates è incluso un ulteriore stato FStates , il membro delle dimensioni rimane impostato su STOR_POFX_COMPONENT_SIZE e non include le dimensioni della struttura STOR_POFX_COMPONENT_IDLE_STATE aggiuntiva.

Requisiti

Requisito Valore
Client minimo supportato Windows 10
Intestazione Storport.h

Vedi anche

HW_UNIT_CONTROL

STOR_POFX_COMPONENT

STOR_POFX_COMPONENT_IDLE_STATE

STOR_POFX_DEVICE

StorPortInitializePoFxPower

StorPortPoFxActivateComponent