class PowerLevelController

Defined at line 72 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

Base class for power level controllers that can control the active power

levels CPU power domains.

Protected Members

atomic serving_

Public Methods

zx::result<uint32_t> Post (const PowerLevelUpdateRequest & pending)

Posts a pending request making it available for the entity in charge of executing the

transition. This method must be complemented by an acknowledgment of a transition.

void PowerLevelController (ControlInterface control_interface)

Defined at line 74 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

void ~PowerLevelController ()

Defined at line 76 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

void PowerLevelController (const PowerLevelController & )

Defined at line 78 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

PowerLevelController & operator= (const PowerLevelController & )

Defined at line 79 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

zx::result<uint64_t> GetCurrentPowerLevel (uint32_t domain_id)

Returns the current device-specific power level (i.e. the value passed as a

control argument) for the given domain id, if supported by the controller.

May be implemented by in-kernel CPU drivers that are capable of querying

the current hardware state.

Defined at line 89 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

uint64_t id ()

Unique id of the `PowerLevelController`, used for validation.

bool is_serving ()

Determines whether the controller is serving requests or not.

Allows scheduler instances to interrogate whether they should consider any

active power levels or not.

Defined at line 99 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

ControlInterface control_interface ()

Returns the control interface this power level controller implements.

Defined at line 102 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h

bool is_fast_path ()

Returns true if power level controller supports fast path invocation from

scheduler context.

Defined at line 106 of file ../../zircon/kernel/lib/power-management/include/lib/power-management/power-level-controller.h