WdfDeviceIndicateWakeStatus function (wdfdevice.h)
[Applies to KMDF only]
The WdfDeviceIndicateWakeStatus method informs the framework that the calling bus driver has stopped waiting for a specified device to trigger a wake signal on the bus.
Syntax
NTSTATUS WdfDeviceIndicateWakeStatus(
[in] WDFDEVICE Device,
[in] NTSTATUS WaitWakeStatus
);
Parameters
[in] Device
A handle to a framework device object.
[in] WaitWakeStatus
An NTSTATUS status value. If the device triggered a wake signal, the caller must set this value to STATUS_SUCCESS or another status value for which NT_SUCCESS(WaitWakeStatus) equals TRUE. If the device did not trigger a wake signal or if an error was detected, the caller must provide a status value for which NT_SUCCESS(WaitWakeStatus) equals FALSE. For more information, see the following Remarks section.
Return value
If the operation succeeds, WdfDeviceIndicateWakeStatus returns STATUS_SUCCESS. Additional return values include:
Return code | Description |
---|---|
|
WaitWakeStatus is STATUS_PENDING or STATUS_CANCELLED. |
|
The driver stack was not set up to wait for the device to trigger a wake signal. |
|
The calling driver is not responsible for waiting for the device to trigger a wake signal. |
The method might return other NTSTATUS values.
A bug check occurs if the driver supplies an invalid object handle.
Remarks
If NT_SUCCESS(WaitWakeStatus) equals TRUE, the framework will restore the device and system to their working states. If NT_SUCCESS(WaitWakeStatus) equals FALSE, the device and system will remain in their current states.
For more information about calling the WdfDeviceIndicateWakeStatus method, see Supporting System Wake-Up.
Examples
The following code example informs the framework that the specified device has triggered a wake signal.
NTSTATUS status;
status = WdfDeviceIndicateWakeStatus(
hChild,
STATUS_SUCCESS
);
Requirements
Requirement | Value |
---|---|
Target Platform | Universal |
Minimum KMDF version | 1.0 |
Header | wdfdevice.h (include Wdf.h) |
Library | Wdf01000.sys (see Framework Library Versioning.) |
IRQL | <= DISPATCH_LEVEL |
DDI compliance rules | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |