// pep_x.h
typedef struct _PEP_PLATFORM_IDLE_STATE {
POHANDLE InitiatingProcessor;
UCHAR InitiatingState;
ULONG Latency;
ULONG BreakEvenDuration;
ULONG DependencyArrayUsed;
ULONG DependencyArrayCount;
PEP_PROCESSOR_IDLE_DEPENDENCY DependencyArray[ANYSIZE_ARRAY];
} PEP_PLATFORM_IDLE_STATE, *PPEP_PLATFORM_IDLE_STATE;
View the official Windows Driver Kit DDI reference// pepfx.h
typedef struct _PEP_PLATFORM_IDLE_STATE {
POHANDLE InitiatingProcessor;
UCHAR InitiatingState;
ULONG Latency;
ULONG BreakEvenDuration;
ULONG DependencyArrayUsed;
ULONG DependencyArrayCount;
PEP_PROCESSOR_IDLE_DEPENDENCY DependencyArray[ANYSIZE_ARRAY];
} PEP_PLATFORM_IDLE_STATE, *PPEP_PLATFORM_IDLE_STATE;
View the official Windows Driver Kit DDI referenceNo description available.
The PEP_PLATFORM_IDLE_STATE structure specifies the properties of a platform idle state.
InitiatingProcessorA POHANDLE value that identifies the processor that initiates the transition to this platform idle state, or NULL if any processor can initiate the transition. If non-NULL, this handle represents the registration of the processor (as a device) with the Windows power management framework (PoFx).
InitiatingStateThe index of the processor idle state that the processor enters to initiate the platform's entry to the specified platform idle state. If the IdleStates array in the PEP_PPM_QUERY_IDLE_STATES_V2 structure contains N elements, the idle states are numbered 0 to N-1 in the order in which they appear in the array.
LatencyThe worst-case latency, in 100-nanosecond units, that the platform requires to wake from this idle state in response to a wake event.
BreakEvenDurationThe minimum amount of time, specified in 100-nanosecond units, that the platform must spend in this idle state to make a transition to this state worthwhile. PoFx uses this member value as a hint to avoid switching the platform to an idle state unless the platform is likely to remain in this state for at least the amount of time specified by BreakEvenDuration.
DependencyArrayUsedThe number of items in DependencyArray which were filled in by the PEP.
DependencyArrayCountThe number of elements in the DependencyArray array. The array contains one element for each processor in the hardware platform.
DependencyArrayThe first element in an array of PEP_PROCESSOR_IDLE_DEPENDENCY structures. This array specifies the set of dependencies that the platform idle state has on each processor. If the platform contains N processors, the array contains N elements, and processors are numbered 0 to N-1 in the order in which they are represented in the array.
This structure is used in conjunction with the PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE notification. The State member of a PEP_PPM_QUERY_PLATFORM_STATE structure is a PEP_PLATFORM_IDLE_STATE structure.
PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE
The PEP_PLATFORM_IDLE_STATE structure specifies the properties of a platform idle state.
InitiatingProcessorA POHANDLE value that identifies the processor that initiates the transition to this platform idle state, or NULL if any processor can initiate the transition. If non-NULL, this handle represents the registration of the processor (as a device) with the Windows power management framework (PoFx).
InitiatingStateThe index of the processor idle state that the processor enters to initiate the platform's entry to the specified platform idle state. If the IdleStates array in the PEP_PPM_QUERY_IDLE_STATES_V2 structure contains N elements, the idle states are numbered 0 to N-1 in the order in which they appear in the array.
LatencyThe worst-case latency, in 100-nanosecond units, that the platform requires to wake from this idle state in response to a wake event.
BreakEvenDurationThe minimum amount of time, specified in 100-nanosecond units, that the platform must spend in this idle state to make a transition to this state worthwhile. PoFx uses this member value as a hint to avoid switching the platform to an idle state unless the platform is likely to remain in this state for at least the amount of time specified by BreakEvenDuration.
DependencyArrayUsedThe number of items in DependencyArray which were filled in by the PEP.
DependencyArrayCountThe number of elements in the DependencyArray array. The array contains one element for each processor in the hardware platform.
DependencyArrayThe first element in an array of PEP_PROCESSOR_IDLE_DEPENDENCY structures. This array specifies the set of dependencies that the platform idle state has on each processor. If the platform contains N processors, the array contains N elements, and processors are numbered 0 to N-1 in the order in which they are represented in the array.
This structure is used in conjunction with the PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE notification. The State member of a PEP_PPM_QUERY_PLATFORM_STATE structure is a PEP_PLATFORM_IDLE_STATE structure.
PEP_NOTIFY_PPM_QUERY_PLATFORM_STATE