次の方法で共有


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 配列に N 個の要素が含まれている場合、コンポーネントインデックスの範囲は 0 から N ~ 1 です。

[in] Flags

使用されません。 0 に設定します。

戻り値

StorPortPoFxIdleComponent ルーチンは、次のいずれかの状態コードを返します。

リターン コード 形容
STOR_STATUS_SUCCESS
ストレージ デバイスのアクティブ化参照が正常にデクリメントされ、コンポーネントがアイドル状態です。
STOR_STATUS_INVALID_PARAMETER
HwDeviceExtension するか、デバイス NULL です。

-又は-

アドレス は、無効なユニット アドレス構造を指しています。

-又は-

アドレス で指定されたストレージ デバイスが見つかりません。

-又は-

ストレージ デバイスは、電源管理フレームワーク (PoFx) に登録されていません。

-又は-

Srb が指す SRB は Storport から送信されません。

-又は-

Flags パラメーターは 0 以外です。

STOR_STATUS_INVALID_DEVICE_REQUEST
アダプターまたはユニットは PoFx をサポートしていません。

-又は-

StorPortPoFxIdleComponent は、非アクティブな コンポーネント と、StorPortPoFxActivateComponent への以前の呼び出し 実行されなかった Srb で呼び出されました。

STOR_STATUS_INVALID_IRQL
現在の IRQL > DISPATCH_LEVEL。
STOR_STATUS_BUSY
デバイス コンポーネントのアクティブな参照はデクリメントされましたが、コンポーネントはまだアクティブです。

備考

現在、アダプター デバイスとユニット デバイスの両方のコンポーネントの最大数は 1 です。 コンポーネント のインデックスは常に 0 に設定する必要があります。

StorPortPoFxIdleComponent する各呼び出しは、StorPortPoFxActivateComponent する前の呼び出しと一致する必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows 8 以降で使用できます。
ターゲット プラットフォーム 万国
ヘッダー storport.h
IRQL 任意

関連項目

STOR_POFX_DEVICE

StorPortInitializePoFxPower

StorPortPoFxActivateComponent