PO_FX_CORE_DEVICE structure (pep_x.h)

The PO_FX_CORE_DEVICE structure contains information about the power-state attributes of the components in a core system resource, and provides a software interface for power-managing these components.

Syntax

typedef struct _PO_FX_CORE_DEVICE {
  ULONG                                         Version;
  ULONG                                         ComponentCount;
  PPO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK    ComponentActiveConditionCallback;
  PPO_FX_COMPONENT_IDLE_CONDITION_CALLBACK      ComponentIdleConditionCallback;
  PPO_FX_COMPONENT_CRITICAL_TRANSITION_CALLBACK ComponentCriticalTransitionCallback;
  PPO_FX_COMPONENT_IDLE_STATE_CALLBACK          ComponentIdleStateCallback;
  PVOID                                         DeviceContext;
  PO_FX_COMPONENT                               Components[ANYSIZE_ARRAY];
} PO_FX_CORE_DEVICE, *PPO_FX_CORE_DEVICE;

Members

Version

The version number of this structure.

ComponentCount

The number of elements in the Components array at the end of this structure. This count includes all elements of the array, and includes both the first element, which is a member of this structure, and any additional elements that follow the end of this structure.

ComponentActiveConditionCallback

A pointer to a ComponentActiveConditionCallback callback routine. PoFx calls this routine to notify the driver that the specified component completed a transition from the idle condition to the active condition.

ComponentIdleConditionCallback

A pointer to a ComponentIdleConditionCallback callback routine. PoFx calls this routine to notify the driver that the specified component completed a transition from the active condition to the idle condition.

ComponentCriticalTransitionCallback

A pointer to a ComponentCriticalTransitionCallback callback routine. PoFx calls this routine to notify the driver that the specified component is about to make a transition between the idle condition and the active condition.

ComponentIdleStateCallback

A pointer to a ComponentIdleStateCallback callback routine. PoFx calls this routine to notify the driver of a pending change to the Fx power state of the specified component.

DeviceContext

A pointer to a PEP-defined device context. PoFx supplies this pointer as the first parameter in calls to the ComponentActiveConditionCallback, ComponentIdleConditionCallback, ComponentCriticalTransitionCallback, and ComponentIdleStateCallback routines. This context is opaque to PoFx.

Components[ANYSIZE_ARRAY]

The first element in an array of PO_FX_COMPONENT structures. Each element in the array describes the power attributes of a component in the device. If the array contains more than one element, the additional elements immediately follow the end of the PO_FX_CORE_DEVICE structure. The number of elements in the array is specified in the ComponentCount member of the PO_FX_CORE_DEVICE structure.

Remarks

This structure is used by the PoFxRegisterCoreDevice routine.

A core system resource is a hardware device, such as a timer or an interrupt controller, that is managed by the Windows hardware abstraction layer (HAL).

For more information about component transitions between the active condition and the idle condition, see Component-Level Power Management.

Requirements

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

See also

ComponentActiveConditionCallback

ComponentCriticalTransitionCallback

ComponentIdleConditionCallback

ComponentIdleStateCallback

PO_FX_COMPONENT

PoFxRegisterCoreDevice