Migrate 25 crates to monorepo.

sec1
semver
serde_cbor
serde_derive
shared_library
slab
smallvec
smccc
socket2
spin
spki
strsim
strum
strum_macros
sync_wrapper
syn-mid
synstructure
tempfile
termcolor
termtree
textwrap
thiserror
thread_local
tinytemplate
tokio-macros

Bug: 339424309
Test: treehugger
Change-Id: I2f52aa71d45471559ca21cc6a4c0c2ac3f29c39f
1 file changed
tree: 67b22d76707217348655f42a920d1157e5576194
  1. .github/
  2. src/
  3. .cargo_vcs_info.json
  4. .gitignore
  5. Android.bp
  6. AUTHORS
  7. Cargo.toml
  8. Cargo.toml.orig
  9. cargo_embargo.json
  10. CHANGELOG.md
  11. CONTRIBUTING.md
  12. LICENSE
  13. LICENSE-APACHE
  14. LICENSE-MIT
  15. METADATA
  16. MODULE_LICENSE_APACHE2
  17. OWNERS
  18. README.md
  19. rules.mk
  20. rust-toolchain.toml
README.md

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.

License

Licensed under either of

at your option.

Contributing

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