PoClearPowerRequest function

The PoClearPowerRequest routine decrements the count for the specified power request type.

Syntax

NTKERNELAPI NTSTATUS PoClearPowerRequest(
  PVOID              PowerRequest,
  POWER_REQUEST_TYPE Type
);

Parameters

PowerRequest

A pointer to a power request object that was created by the PoCreatePowerRequest routine.

Type

The type of the power request. Set this parameter to the following POWER_REQUEST_TYPE enumeration value:

  • PowerRequestSystemRequired

Return Value

PoClearPowerRequest returns STATUS_SUCCESS if the call is successful. If the call fails, possible error return codes include the following:

Return code Description
STATUS_NOT_SUPPORTED
Parameter Type is set to an unsupported value.

Remarks

A driver can call the PoSetPowerRequest routine to request that the power manager override several types of default power behavior, which are specified as POWER_REQUEST_TYPE enumeration values. To restore the default behavior, the driver cancels the request by calling the PoClearPowerRequest routine.

The power manager maintains a count of the active requests for each power request type. The PoSetPowerRequest routine increments the count for the specified power request type by one. The PoClearPowerRequest routine decrements the count by one. A nonzero count indicates that requests from one or more components are active. After the count decrements to zero, the power manager restores the default behavior for the specified power request type.

Requirements

   
Windows version Available starting with Windows 7.
Target Platform Universal
Header ntifs.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL "<= DISPATCH_LEVEL"

See Also

POWER_REQUEST_TYPE

PoCreatePowerRequest

PoSetPowerRequest