Hardware Dev Center

PoFxStartDevicePowerManagement routine

The PoFxStartDevicePowerManagement routine completes the registration of a device with the power management framework (PoFx) and starts device power management.

Syntax


VOID PoFxStartDevicePowerManagement(
  _In_ POHANDLE Handle
);

Parameters

Handle [in]

A handle that represents the registration of the device with the power management framework (PoFx). The device driver previously received this handle from the PoFxRegisterDevice routine.

Return value

None.

Remarks

After a driver calls the PoFxRegisterDevice routine to register a device with PoFx, all components in the device are fully on and in the active condition so that the driver can finish initializing the hardware. To start active power management, the driver must call PoFxStartDevicePowerManagement. By default, this call switches all components to the idle condition.

After PoFxStartDevicePowerManagement switches a component to the idle condition, PoFx might immediately start calling the driver's callback routines, even before PoFxStartDevicePowerManagement returns. PoFx calls the driver's ComponentIdleConditionCallback callback routine to indicate that a component has switched to the idle condition. The driver must not access a component that is in the idle condition. Before the driver can access the component, the driver must call the PoFxActivateComponent and wait for PoFx to call the driver's ComponentActiveConditionCallback callback routine. This callback informs the driver that the component is in the active condition and can safely be accessed.

If the driver requires a component to be in the active condition immediately after power management starts, the driver must explicitly activate the component by calling the PoFxActivateComponent routine, and this call must occur after the PoFxRegisterDevice call but before the PoFxStartDevicePowerManagement call.

Requirements

Target platform

Universal

Version

Available starting with Windows 8.

Header

Wdm.h

DLL

Ntoskrnl.exe

IRQL

PASSIVE_LEVEL

See also

ComponentActiveConditionCallback
ComponentIdleConditionCallback
PoFxActivateComponent
PoFxRegisterDevice

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft