POFXCALLBACKUPDATEPLATFORMIDLESTATE callback function (pep_x.h)

The UpdatePlatformIdleState routine is called by the platform extension plug-in (PEP) to update the properties of the specified platform idle state.

Syntax

POFXCALLBACKUPDATEPLATFORMIDLESTATE Pofxcallbackupdateplatformidlestate;

NTSTATUS Pofxcallbackupdateplatformidlestate(
  [in] POHANDLE ProcessorHandle,
  [in] ULONG PlatformState,
  [in] PPEP_PLATFORM_IDLE_STATE_UPDATE Update
)
{...}

Parameters

[in] ProcessorHandle

A POHANDLE value that represents the registration of the processor (as a device) with the Windows power management framework (PoFx). The PEP previously received this handle from PoFx during the PEP_DPM_REGISTER_DEVICE notification that informed the PEP that the processor had been registered with PoFx.

[in] PlatformState

An index that identifies the platform idle state whose properties are to be updated. In response to a previous PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES notification, the PEP specified the number of supported platform idle states. If the PEP specified N platform idle states, valid platform idle state indexes range from 0 to N-1. In response to a previous PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE notification, the PEP specified the properties of this platform idle state.

[in] Update

A pointer to a PEP_PLATFORM_IDLE_STATE_UPDATE structure that contains the updated properties of the platform idle state.

Return value

UpdatePlatformIdleState returns STATUS_SUCCESS if it successfully updates the properties of the platform idle state. Possible error return values include the following status codes.

Return value Description
STATUS_NOT_SUPPORTED
The version number in the PEP_PLATFORM_IDLE_STATE_UPDATE structure is not a supported value.
STATUS_NOT_IMPLEMENTED
The UpdatePlatformIdleState routine is not implemented for this processor.

Remarks

This routine is implemented by PoFx and is called by the PEP. The UpdatePlatformIdleState member of the PEP_KERNEL_INFORMATION_STRUCT_V3 structure is a pointer to an UpdatePlatformIdleState routine.

The PEP must wait until after it has completed all PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE notifications to call the UpdatePlatformIdleState routine.

The UpdatePlatformIdleState routine must be called at IRQL = PASSIVE_LEVEL.

Requirements

Requirement Value
Minimum supported client Supported starting with Windows 10.
Target Platform Windows
Header pep_x.h (include Pep_x.h)
IRQL PASSIVE_LEVEL

See also

PEP_DPM_REGISTER_DEVICE

PEP_KERNEL_INFORMATION_STRUCT_V3

PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE

PEP_NOTIFY_PPM_QUERY_PLATFORM_STATES

PEP_PLATFORM_IDLE_STATE_UPDATE