IPowerPolicyCallbackWakeFromS0::OnArmWakeFromS0 メソッド (wudfddi.h)
[警告: UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、新しいバージョンのWindows 10では UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは UMDF 2 を使用する必要があります。 詳細については、「UMDF を使用したはじめに」を参照してください。
ドライバーの OnArmWakeFromS0 コールバック関数アーム (つまり、有効) デバイスは、システムが システムの動作状態 (S0) のままである場合、低電力デバイス状態の間にスリープ解除信号をトリガーできるようにします。
構文
HRESULT OnArmWakeFromS0(
[in] IWDFDevice *pWdfDevice
);
パラメーター
[in] pWdfDevice
ドライバーのデバイスのいずれかを表すデバイス オブジェクトの IWDFDevice インターフェイスへのポインター。
戻り値
操作が成功した場合、OnArmWakeFromS0 コールバック関数は、S_OKまたは SUCCEEDED(status) が TRUE と等しい別の状態値を返す必要があります。 それ以外の場合は、SUCCEEDED(status) が FALSE の状態値を返す必要があります。
SUCCEEDED(status) が FALSE の場合、フレームワークはドライバーの IPowerPolicyCallbackWakeFromS0::OnDisarmWakeFromS0 コールバック関数を呼び出します。 (フレームワークは、PnP マネージャーにデバイスの障害を報告しません。)
注釈
ドライバーが IPowerPolicyCallbackWakeFromS0 インターフェイスをサポートしている場合、ドライバーは OnArmWakeFromS0 コールバック関数を提供する必要があります。
OnArmWakeFromS0 コールバック関数は、デバイスがバス上でウェイク シグナルをトリガーする外部イベントを検出するために必要なデバイス固有の操作を処理します。 カーネル モード バス ドライバーは、PCI バスの電源管理イベント (PME) 信号を有効にするなどのバス固有の操作を処理します。
ドライバーが OnArmWakeFromS0 コールバック関数を登録している場合、フレームワークは、デバイスがまだ D0 デバイスの電源状態である間に、デバイスの電源状態を下げる前に、フレームワークがドライバーの代わりに 待機/スリープ解除 IRP を 送信した後に呼び出します。
このプロセスは、次の順序で実行されます。
- フレームワークは、デバイスが事前に設定された時間アイドル状態になっていると判断します。
- フレームワークは、ドライバーの OnArmWakeFromS0 コールバック関数を呼び出します。
- フレームワークは、デバイスの電源を下げるために、デバイスのバスのドライバーを要求します。
フレームワークがこのコールバック関数を呼び出すタイミングの詳細については、「 UMDF の PnP および Power Management シナリオ」を参照してください。
デバイスが次の場合、 OnArmWakeFromS0 コールバック関数を指定する必要はありません。
- "選択的中断" をサポートする USB デバイスです。
- システムの電源が完全に入っている間は、電源を切ることができません。
- デバイスがスリープ解除信号をトリガーできるようにする特別なハードウェア操作は必要ありません。
このコールバック関数の詳細については、「 UMDF ベースのドライバーでのアイドル Power-Down のサポート」を参照してください。
要件
要件 | 値 |
---|---|
サポート終了 | UMDF 2.0 以降では使用できません。 |
対象プラットフォーム | デスクトップ |
最小 UMDF バージョン | 1.9 |
Header | wudfddi.h (Wudfddi.h を含む) |
こちらもご覧ください
IPowerPolicyCallbackWakeFromS0