// wdfdevice.h
VOID WdfDeviceSetPowerCapabilities(
[in] WDFDEVICE Device,
[in] PWDF_DEVICE_POWER_CAPABILITIES PowerCapabilities
);
View the official Windows Driver Kit DDI referenceNo description available.
[Applies to KMDF and UMDF]
The WdfDeviceSetPowerCapabilities method reports a device's power capabilities.
Device [in]A handle to a framework device object.
PowerCapabilities [in]A pointer to a driver-allocated WDF_DEVICE_POWER_CAPABILITIES structure.
A bug check occurs if the driver supplies an invalid object handle.
A driver typically calls WdfDeviceSetPowerCapabilities from within one of the following callback functions:
If more than one driver in the device's driver stack call WdfDeviceSetPowerCapabilities, the power manager uses the values that are supplied by the driver that is highest in the stack.
The following code example initializes a WDF_DEVICE_POWER_CAPABILITIES structure and then calls WdfDeviceSetPowerCapabilities.
WDF_DEVICE_POWER_CAPABILITIES powerCaps;
WDF_DEVICE_POWER_CAPABILITIES_INIT(&powerCaps);
powerCaps.DeviceD1 = WdfTrue;
powerCaps.WakeFromD1 = WdfTrue;
powerCaps.DeviceWake = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemWorking] = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemSleeping1] = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemSleeping2] = PowerDeviceD2;
powerCaps.DeviceState[PowerSystemSleeping3] = PowerDeviceD2;
powerCaps.DeviceState[PowerSystemHibernate] = PowerDeviceD3;
powerCaps.DeviceState[PowerSystemShutdown] = PowerDeviceD3;
WdfDeviceSetPowerCapabilities(
device,
&powerCaps
);
WDF_DEVICE_POWER_CAPABILITIES_INIT