StorPortPoFxIdleComponent 関数 (storport.h)
StorPortPoFxIdleComponent ルーチンは、ストレージ デバイスの指定されたコンポーネントのアクティブ化参照カウントをデクリメントします。
構文
ULONG StorPortPoFxIdleComponent(
[in] PVOID HwDeviceExtension,
[in, optional] PSTOR_ADDRESS Address,
[in, optional] PSCSI_REQUEST_BLOCK Srb,
[in] ULONG Component,
[in] ULONG Flags
);
パラメーター
[in] HwDeviceExtension
ホスト バス アダプター (HBA) のハードウェア デバイス拡張機能へのポインター。
[in, optional] Address
記憶装置ユニットのアドレス。 ストレージ アダプター コンポーネントをアイドリングする場合、このパラメーターは NULL です 。
[in, optional] Srb
コンポーネントの非アクティブ化をトリガーする SRB。 ミニポートがデバイス コンポーネントを内部的にアイドリングしている場合、このパラメーターは NULL です 。
[in] Component
コンポーネントを識別するインデックス。 このパラメーターは、ミニポート ドライバーが StorPortInitializePoFxPower の呼び出しでデバイスに登録されたSTOR_POFX_DEVICE構造体の Components 配列へのインデックスです。 Components 配列に N 個の要素が含まれている場合、コンポーネントインデックスの範囲は 0 から N ~ 1 です。
[in] Flags
使用しません。 0 に設定されます。
戻り値
StorPortPoFxIdleComponent ルーチンは、次のいずれかの状態コードを返します。
リターン コード | 説明 |
---|---|
|
ストレージ デバイスのアクティブ化参照が正常にデクリメントされ、コンポーネントがアイドル状態になりました。 |
|
HwDeviceExtension または Device が NULL です。
または アドレス は、無効なユニット アドレス構造を指しています。 または Address で指定されたストレージ デバイスが見つかりません。 または ストレージ デバイスは、電源管理フレームワーク (PoFx) に登録されていません。 または Srb が指す SRB は Storport から送信されません。 または Flags パラメーターは 0 以外です。 |
|
アダプターまたはユニットは PoFx をサポートしていません。
または StorPortPoFxIdleComponent は、非アクティブなコンポーネントと、StorPortPoFxActivateComponent への以前の呼び出しが実行されなかった Srb で呼び出されました。 |
|
現在の IRQL > DISPATCH_LEVEL。 |
|
デバイス コンポーネントのアクティブな参照はデクリメントされましたが、コンポーネントはまだアクティブです。 |
注釈
現在、アダプター デバイスとユニット デバイスの両方の最大コンポーネント数は 1 です。 Component のインデックスは常に 0 に設定する必要があります。
StorPortPoFxIdleComponent の各呼び出しは、StorPortPoFxActivateComponent の以前の呼び出しと一致する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 以降で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | storport.h |
IRQL | Any |