mirror of
https://github.com/italicsjenga/rp-hal-boards.git
synced 2024-12-23 20:51:31 +11:00
280de7cb99
There are a lot of non-binary crates depending on rp2040-hal. That way, the default-features of rp2040-hal may be activated unintentionally through an indirect dependency. Therefore, a binary crate which wants to disable the `critical-section-impl` feature to provide its own one could have a hard time to do so. In contrast, the board support crates are usually only used by top-level binary crates. So disabling the default features on those should usually just work. Binary crates depending on rp2040-hal directly, which don't use any board support crate, might need to activate the feature manually. This is reasonable because those binary crates need to replicate some boilerplate from the board crates anyhow.
63 lines
2 KiB
TOML
63 lines
2 KiB
TOML
[package]
|
|
name = "rp2040-hal"
|
|
version = "0.5.0"
|
|
authors = ["The rp-rs Developers"]
|
|
edition = "2018"
|
|
homepage = "https://github.com/rp-rs/rp-hal"
|
|
description = "A Rust Embeded-HAL impl for the rp2040 microcontroller"
|
|
license = "MIT OR Apache-2.0"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
cortex-m = "0.7.2"
|
|
cortex-m-rt = ">=0.6.15,<0.8"
|
|
embedded-hal = { version = "0.2.5", features = ["unproven"] }
|
|
eh1_0_alpha = { package = "embedded-hal", version = "=1.0.0-alpha.8", optional = true }
|
|
embedded-time = "0.12.0"
|
|
itertools = { version = "0.10.1", default-features = false }
|
|
nb = "1.0"
|
|
rp2040-pac = "0.3.0"
|
|
paste = "1.0"
|
|
pio = "0.2.0"
|
|
rp2040-hal-macros = { version = "0.1.0", path = "../rp2040-hal-macros" }
|
|
usb-device = "0.2.9"
|
|
vcell = "0.1"
|
|
void = { version = "1.0.2", default-features = false }
|
|
rand_core = "0.6.3"
|
|
# Always set the custom-impl feature of legacy critical-section, even if we don't provide our own,
|
|
# as the default implementation should no longer be used.
|
|
critical-section_0_2 = { package = "critical-section", version = "0.2.4", features = ["custom-impl"] }
|
|
critical-section = { version = "1.0.0" }
|
|
|
|
futures = { version = "0.3", default-features = false, optional = true }
|
|
chrono = { version = "0.4", default-features = false, optional = true }
|
|
|
|
defmt = { version = ">=0.2.0, <0.4", optional = true }
|
|
|
|
[dev-dependencies]
|
|
cortex-m-rt = "0.7"
|
|
panic-halt = "0.2.0"
|
|
rp2040-boot2 = "0.2.1"
|
|
hd44780-driver = "0.4.0"
|
|
pio-proc = "0.2.0"
|
|
dht-sensor = "0.2.1"
|
|
|
|
[features]
|
|
rt = ["rp2040-pac/rt"]
|
|
rom-func-cache = []
|
|
disable-intrinsics = []
|
|
rom-v2-intrinsics = []
|
|
rp2040-e5 = [] # USB errata 5: USB device fails to exit RESET state on busy USB bus.
|
|
critical-section-impl = ["critical-section/restore-state-u8"]
|
|
|
|
[[example]]
|
|
# irq example uses cortex-m-rt::interrupt, need rt feature for that
|
|
name = "gpio_irq_example"
|
|
required-features = ["rt"]
|
|
|
|
[[example]]
|
|
# vector_table example uses cortex-m-rt::interrupt, need rt feature for that
|
|
name = "vector_table"
|
|
required-features = ["rt"]
|