# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "psci"
version = "0.1.1"
authors = ["Andrew Walbran <qwandor@google.com>"]
description = "Functions and constants for the Arm Power State Coordination Interface (PSCI) 1.1 on aarch64."
readme = "README.md"
keywords = [
    "arm",
    "aarch64",
    "cortex-a",
    "psci",
]
categories = [
    "embedded",
    "no-std",
    "hardware-support",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/google/psci"
resolver = "2"

[dependencies]

[features]
default = ["hvc"]
hvc = []
smc = []
