次の方法で共有


PoFxReportDevicePoweredOn 関数 (wdm.h)

PoFxReportDevicePoweredOn ルーチンは、デバイスが D0 (完全にオン) 電源状態への要求された移行を完了したことを電源管理フレームワーク (PoFx) に通知します。

構文

void PoFxReportDevicePoweredOn(
  [in] POHANDLE Handle
);

パラメーター

[in] Handle

電源管理フレームワーク (PoFx) を使用したデバイスの登録を表すハンドル。 デバイス ドライバーは、以前に PoFxRegisterDevice ルーチンからこのハンドルを受信しました。

戻り値

なし

解説

登録されているデバイスのドライバーは、次のいずれかが発生した後に PoFxReportDevicePoweredOn を呼び出す必要があります。

  • PoFx は、ドライバーの DevicePowerRequiredCallback コールバック ルーチンを呼び出して、デバイスが D0 電源状態に入る必要があることをドライバーに通知します。
  • PoFx は、ドライバーの DirectedPowerUpCallback コールバック ルーチンを呼び出して、デバイスが D0 電源状態に入る必要があることをドライバーに通知します。
  • PoFx は、S0 電源状態への保留中のシステム遷移をドライバーに通知する S0 IRP ( IRP_MN_SET_POWER 要求) をドライバーに送信します。
いずれの場合も、ドライバーは D0 IRP ( IRP_MN_SET_POWER 要求) をデバイス スタックに送信し、デバイスがまだ D0 状態でない場合は、D0 電源状態への移行を開始します。 ドライバーが D0 状態への移行を完了 (および下位のすべてのドライバーが完了) すると、ドライバーは PoFxReportDevicePoweredOn を呼び出して PoFx に通知します。

ドライバーは、D0 IRP が必要ない、D0 IRP 要求が失敗する、ディスパッチされた D0 IRP が成功または失敗した、または S0 IRP が成功または失敗するかどうかに関係なく、 PoFxReportDevicePoweredOn を呼び出す必要があります。

電源が必要な/指示された電源投入コールバックの場合、 PoFxReportDevicePoweredOn 呼び出しは、コールバック呼び出し中またはコールバック呼び出し後に発生する可能性があります。

S0 IRP 要求の場合、ドライバーはできるだけ早くこの要求を完了し、デバイスを D0 電源状態に切り替えて、 PoFxReportDevicePoweredOn を呼び出す必要があります。 詳細については、「 デバイスの電源ポリシー所有者でのシステム Set-Power IRP の処理」を参照してください

PoFxReportDevicePoweredOn へのエントリでは、デバイス内のすべてのコンポーネントがオンになっている初期化されていない D0 電源状態になっている可能性があります。 PoFxReportDevicePoweredOn 呼び出しに応答して、PoFx は初期化された D0 状態でデバイスを構成します。 この構成中、PoFx はできるだけ多くのコンポーネントを低電力 Fx 電源状態に切り替えます。

要件

要件
サポートされている最小のクライアント Windows 8 以降で使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h
Library Ntoskrnl.lib
[DLL] Ntoskrnl.exe
IRQL <= DISPATCH_LEVEL

こちらもご覧ください

DevicePowerRequiredCallback

IRP_MN_SET_POWER

PoFxRegisterDevice