Expand description
Constants for version 1.1 of the Arm Power State Coordination Interface (PSCI) version 1.1, and functions to call them.
Note that PSCI calls may be made via either HVC or SMC. You can choose which one to use by
building this crate with the corresponding feature (i.e. hvc
or smc
). By default hvc
is
enabled. If neither feature is enabled then the functions to make calls will not be available,
but the constants are still provided.
This crate currently only supports aarch64 and the SMC64 versions of the various calls, in the cases that both SMC32 and SMC64 versions exist.
Modules
PSCI error codes.
Enums
Affinity state values returned by AFFINITY_INFO
.
Selects which affinity level fields are valid in the target_affinity
parameter to
AFFINITY_INFO
.
The level of multicore support in the Trusted OS, as returned by MIGRATE_INFO_TYPE
.
The power state of a node in the power domain topology, as returned by NODE_HW_STATE
.
The mode to be used by CPU_SUSPEND
, as set by PSCI_SET_SUSPEND_MODE
.
Constants
Functions
Gets the status of an affinity instance.
Puts the current core into an implementation-defined low power state.
Puts the current core into an implementation-defined low power state.
Powers down the current core.
Powers up a core.
Suspends execution of a core or topology node.
Enables or disables memory protection.
Checks whether a memory range is protected by MEM_PROTECT
.
Asks the Trusted OS to migrate its context to a specific core.
Identifies the levelof multicore support in the Trusted OS.
Returns the MPIDR value of the current resident core of the Trusted OS.
Retuns the true hardware state of a node in the power domain topology.
Queries whether SMCCC_VERSION
or a specific PSCI function is implemented, and what features
are supported.
Sets the mode used by CPU_SUSPEND
.
Returns the number of times the platform has used the given power state since cold boot.
Returns the amount of time the platform has spend in the given power state since cold boot.
Shuts down the system.
Resets the system.
Resets the system in an architectural or vendor-specific way.
Suspends the system to RAM.
Returns the version of PSCI implemented.