Freigeben über


STOR_POFX_DEVICE-Struktur (storport.h)

Die STOR_POFX_DEVICE-Struktur beschreibt die Energieattribute eines Speichergeräts für das Energieverwaltungsframework (PoFx).

Syntax

typedef struct _STOR_POFX_DEVICE {
  ULONG               Version;
  ULONG               Size;
  ULONG               ComponentCount;
  ULONG               Flags;
  STOR_POFX_COMPONENT Components[ANYSIZE_ARRAY];
} STOR_POFX_DEVICE, *PSTOR_POFX_DEVICE;

Member

Version

Die Versionsnummer dieser Struktur. Legen Sie dieses Element auf STOR_POFX_DEVICE_VERSION_V1 fest.

Size

Die Größe dieser Struktur. Legen Sie diesen Wert auf STOR_POFX_DEVICE_SIZE fest.

ComponentCount

Die Anzahl der Elemente im Komponentenarray . Legen Sie dieses Element auf 1 fest. Derzeit wird nur eine einzelne Komponente für einen Speicheradapter oder eine logische Einheit unterstützt.

Flags

Die Geräteleistungsstatusfunktionen-Flags. Der Miniport legt mindestens eines der PoFx-Geräteflags fest, um Energiezustandsfunktionen zu aktivieren oder zu deaktivieren.

Flags ist eine bitweise OR-Kombination der folgenden.

Wert Bedeutung
STOR_POFX_DEVICE_FLAG_DISABLE_INTERRUPTS_ON_D3
Gibt an, dass Storport, wenn festgelegt, Interrupts deaktiviert, wenn der Adapter auf D3 gesetzt wird, und interrupts reaktiviert, wenn D0 fortgesetzt wird.
STOR_POFX_DEVICE_FLAG_ENABLE_D3_COLD
Ermöglicht Storport, den D3 Cold-Zustand für den Adapter festzulegen, wenn er ihn unterstützt. Dieses Flag gilt nur für Adapter.
STOR_POFX_DEVICE_FLAG_NO_D0
Fordert an, dass ein Power-Up-IRP nicht an das Geräteobjekt für den Adapter oder die Einheit gesendet wird.
STOR_POFX_DEVICE_FLAG_NO_D3
Fordert an, dass keine Herunterschalt-IRP an das Geräteobjekt für den Adapter oder die Einheit gesendet wird.
STOR_POFX_DEVICE_FLAG_NO_DUMP_ACTIVE
Der Miniport kann das Speichergerät nicht im Speicherabbildmodus aktivieren, wenn das Gerät im Leerlaufzustand oder im Leerlaufmodus ausgeschaltet wurde. Dieses Flag gibt an, ob ein Gerät für den Speicherabbild verfügbar ist, wenn es sich im Leerlauf befindet.

Components[ANYSIZE_ARRAY]

Dieses Element ist das erste Element in einem Array von mindestens einem STOR_POFX_COMPONENT-Elementen . Wenn das Array mehr als ein Element enthält, folgen die zusätzlichen Elemente sofort der STOR_POFX_DEVICE-Struktur . Das Array enthält ein Element für jede Komponente im Gerät. Derzeit verfügen Speichergeräte nur über eine Komponente, sodass zusätzliche Komponentenstrukturen unnötig sind.

Hinweise

Um einen Speicheradapter für die Storport PoFx-Unterstützung zu registrieren, ruft der Miniporttreiber StorPortEnablePassiveInitialization in seiner HwStorInitialize-Routine auf und implementiert eine HwStorPassiveInitializeRoutine. Der Miniport ruft StorPortInitializePoFxPower innerhalb der HwStorPassiveInitializeRoutine auf, um Informationen zur Adapterkomponente bereitzustellen.

Um eine Speichereinheit für die Storport PoFx-Unterstützung zu registrieren, implementiert der Miniporttreiber die HwStorUnitControl-Rückrufroutine und ermöglicht die Behandlung des ScsiUnitPoFxPowerInfo-Komponentensteuerungscodes . Wenn der ScsiUnitPoFxPowerInfo-Steuerungscode verarbeitet wird, ruft der Miniport StorPortInitializePoFxPower auf, wenn die Energieverwaltung im Leerlauf für die Komponentenkomponente aktiviert ist.

Die Komponente für das Speichergerät, das durch den Komponentenarrayindex identifiziert wird. Speichergeräte verfügen nur über eine Komponente, sodass der Index 0 verwendet wird. Routinen wie StorPortPoFxActivateComponent und StorPortPoFxIdleComponent verwenden den Arrayindex einer Komponente, um die Komponente zu identifizieren.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt ab Windows 8.
Kopfzeile storport.h

Weitere Informationen

STOR_POFX_COMPONENT

StorPortInitializePoFxPower

StorPortPoFxActivateComponent

StorPortPoFxIdleComponent