#aarch64 #arm #cortex-a #psci

no-std smccc

Functions and constants for the Arm SMC Calling Convention (SMCCC) 1.4 and Arm Power State Coordination Interface (PSCI) 1.1 on aarch64

2 releases

0.1.1 Apr 19, 2023
0.1.0 Apr 19, 2023

#1859 in Embedded development

Download history 365/week @ 2023-12-17 76/week @ 2023-12-24 274/week @ 2023-12-31 259/week @ 2024-01-07 401/week @ 2024-01-14 300/week @ 2024-01-21 398/week @ 2024-01-28 236/week @ 2024-02-04 292/week @ 2024-02-11 212/week @ 2024-02-18 163/week @ 2024-02-25 300/week @ 2024-03-03 159/week @ 2024-03-10 136/week @ 2024-03-17 73/week @ 2024-03-24 97/week @ 2024-03-31

474 downloads per month


799 lines

SMCCC and PSCI functions for bare-metal Rust on aarch64

crates.io page docs.rs page

This crate provides support for the Arm SMC Calling Convention version 1.4, including standard Arm Architecture Calls constants, and version 1.1 of the Arm Power State Coordination Interface (PSCI). It includes constants, functions to make the calls (on aarch64 targets), and error types.

Note that the PSCI and SMCCC arch calls may be made via either HVC or SMC. You can choose which one to use by passing either Hvc or Smc as a type parameter to the relevant function.

This crate currently only supports aarch64 and the SMC64 versions of the PSCI calls, in the cases that both SMC32 and SMC64 versions exist.

This is not an officially supported Google product.


Licensed under either of

at your option.


If you want to contribute to the project, see details of how we accept contributions.

No runtime deps