EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART コールバック関数 (wdfdevice.h)
[KMDF と UMDF に適用]
ドライバーの EvtDeviceSelfManagedIoRestart イベント コールバック関数は、デバイスのセルフマネージド I/O 操作を再起動します。
構文
EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART EvtWdfDeviceSelfManagedIoRestart;
NTSTATUS EvtWdfDeviceSelfManagedIoRestart(
[in] WDFDEVICE Device
)
{...}
パラメーター
[in] Device
フレームワーク デバイス オブジェクトへのハンドル。
戻り値
EvtDeviceSelfManagedIoRestart コールバック関数でエラーが発生しない場合は、STATUS_SUCCESS、またはNT_SUCCESS(status) が TRUE に等しい別の状態値を返す必要があります。 それ以外の場合は、NT_SUCCESS(status) が FALSE の状態値を返す必要があります。 NT_SUCCESS(status) が FALSE の場合、フレームワークはデバイスを停止し、デバイスのドライバーをアンロードします。
NT_SUCCESS(status) が FALSE の場合、フレームワークはドライバーの EvtDeviceSelfManagedIoFlush および EvtDeviceSelfManagedIoCleanup コールバック関数を呼び出します。
このコールバック関数の戻り値の詳細については、「 デバイスエラーの報告」を参照してください。
注釈
EvtDeviceSelfManagedIoRestart コールバック関数を登録するには、ドライバーで WdfDeviceInitSetPnpPowerEventCallbacks を呼び出す必要があります。
ドライバーが EvtDeviceSelfManagedIoRestart コールバック関数を登録している場合、フレームワークは、デバイスが低電力状態から動作 (D0) 状態に戻るたびに呼び出します。 フレームワークは、ドライバーの EvtDeviceSelfManagedIoSuspend コールバック関数を呼び出した後にのみ 、EvtDeviceSelfManagedIoRestart コールバック関数を呼び出します。
ドライバーの EvtDeviceSelfManagedIoRestart コールバック関数は、デバイスのセルフマネージド I/O 操作を再開するために必要な操作を実行する必要があります。
フレームワークがこのコールバック関数を呼び出すタイミングの詳細については、「 PnP と Power Management のシナリオ」を参照してください。
このコールバック関数を提供するドライバーの詳細については、「 Self-Managed I/O の使用」を参照してください。
EvtDeviceSelfManagedIoRestart コールバック関数は、IRQL = PASSIVE_LEVELで呼び出されます。 このコールバック関数を ページング可能にしないでください。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.0 |
最小 UMDF バージョン | 2.0 |
Header | wdfdevice.h (Wdf.h を含む) |
IRQL | PASSIVE_LEVEL (「解説」セクションを参照) |