STOR_POFX_DEVICE 構造体 (storport.h)

STOR_POFX_DEVICE構造では、ストレージ デバイスの電源属性を電源管理フレームワーク (PoFx) に記述します。

構文

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;

メンバー

Version

この構造体のバージョン番号。 このメンバーを STOR_POFX_DEVICE_VERSION_V1 に設定します。

Size

この構造のサイズ。 この値を STOR_POFX_DEVICE_SIZE に設定します。

ComponentCount

Components 配列内の要素の数。 このメンバーを 1 に設定します。 現在、ストレージ・アダプターまたは論理装置では、1 つのコンポーネントのみがサポートされています。

Flags

デバイスの電源状態機能フラグ。 ミニポートは、電源状態機能を有効または無効にする PoFx デバイス フラグの 1 つ以上を設定します。

フラグ は、次のビットごとの OR の組み合わせです。

意味
STOR_POFX_DEVICE_FLAG_DISABLE_INTERRUPTS_ON_D3
設定すると、Storport はアダプターを D3 に配置するときに割り込みを無効にし、D0 に再開するときに割り込みを再アクティブ化することを指定します。
STOR_POFX_DEVICE_FLAG_ENABLE_D3_COLD
Storport がアダプターをサポートしている場合に、アダプターの D3 コールド状態を設定できるようにします。 このフラグはアダプターにのみ適用されます。
STOR_POFX_DEVICE_FLAG_NO_D0
アダプターまたはユニットのデバイス オブジェクトに電源を入れた IRP を送信しないことを要求します。
STOR_POFX_DEVICE_FLAG_NO_D3
アダプターまたはユニットのデバイス オブジェクトに電源を切る IRP を送信しないことを要求します。
STOR_POFX_DEVICE_FLAG_NO_DUMP_ACTIVE
デバイスがアイドル状態に入った場合、またはアイドル状態のときに電源がオフになっている場合、ミニポートはストレージ デバイスをダンプ モードでアクティブにすることができません。 このフラグは、デバイスがアイドル状態のときにダンプに使用できるかどうかを示します。

Components[ANYSIZE_ARRAY]

このメンバーは、1 つ以上のSTOR_POFX_COMPONENT要素の配列の最初 要素です。 配列に複数の要素が含まれている場合、追加の要素は STOR_POFX_DEVICE 構造体のすぐ後に配置されます。 配列には、デバイス内のコンポーネントごとに 1 つの要素が含まれています。 現在、ストレージ デバイスにはコンポーネントが 1 つしかないため、追加のコンポーネント構造は不要です。

注釈

Storport PoFx サポート用のストレージ アダプターを登録するために、ミニポート ドライバーは、その HwStorInitialize ルーチンで StorPortEnablePassiveInitialization を呼び出し、HwStorPassiveInitializeRoutine を実装します。 ミニポートは、アダプター コンポーネントに関する情報を提供するために、その HwStorPassiveInitializeRoutine 内で StorPortInitializePoFxPower を呼び出します。

Storport PoFx サポート用のストレージ ユニットを登録するために、ミニポート ドライバーは HwStorUnitControl コールバック ルーチンを実装し、 ScsiUnitPoFxPowerInfo ユニット制御コードの処理を提供します。 ScsiUnitPoFxPowerInfo コントロール コードを処理するときに、ユニット コンポーネントのアイドル状態の電源管理が有効になっている場合、ミニポートは StorPortInitializePoFxPower を呼び出します。

Components 配列インデックスによって識別されるストレージ デバイスの コンポーネント 。 ストレージ デバイスにはコンポーネントが 1 つしかないため、インデックス 0 が使用されます。 StorPortPoFxActivateComponentStorPortPoFxIdleComponent などのルーチンでは、コンポーネントの配列インデックスを使用してコンポーネントを識別します。

要件

要件
サポートされている最小のクライアント Windows 8 以降でサポートされています。
Header storport.h

こちらもご覧ください

STOR_POFX_COMPONENT

StorPortInitializePoFxPower

StorPortPoFxActivateComponent

StorPortPoFxIdleComponent