[package] name = "embassy-rp" version = "0.1.0" edition = "2021" license = "MIT OR Apache-2.0" [package.metadata.embassy_docs] src_base = "https://github.com/embassy-rs/embassy/blob/embassy-rp-v$VERSION/embassy-rp/src/" src_base_git = "https://github.com/embassy-rs/embassy/blob/$COMMIT/embassy-rp/src/" features = ["defmt", "unstable-pac", "time-driver"] flavors = [ { name = "rp2040", target = "thumbv6m-none-eabi" }, ] [features] default = [ "rt" ] ## Enable the RP runtime. rt = [ "rp-pac/rt" ] ## Enable defmt defmt = ["dep:defmt", "embassy-usb-driver/defmt", "embassy-hal-internal/defmt"] ## critical section that is safe for multicore use critical-section-impl = ["critical-section/restore-state-u8"] ## Reexport the PAC for the currently enabled chip at `embassy_rp::pac`. ## This is unstable because semver-minor (non-breaking) releases of embassy-rp may major-bump (breaking) the PAC version. ## If this is an issue for you, you're encouraged to directly depend on a fixed version of the PAC. ## There are no plans to make this stable. unstable-pac = [] ## Enable the timer for use with `embassy-time` with a 1MHz tick rate time-driver = [] ## Enable ROM function cache rom-func-cache = [] ## Enable intrinsics intrinsics = [] ## Enable ROM v2 intrinsics rom-v2-intrinsics = [] ## Allow using QSPI pins as GPIO pins. This is mostly not what you want (because your flash lives there) ## and would add both code and memory overhead when enabled needlessly. qspi-as-gpio = [] ## Indicate code is running from RAM. ## Set this if all code is in RAM, and the cores never access memory-mapped flash memory through XIP. ## This allows the flash driver to not force pausing execution on both cores when doing flash operations. run-from-ram = [] #! ### boot2 flash chip support #! If none of these are enabled, w25q080 is used by default (used on the pico) ## AT25SF128a boot2-at25sf128a = [] ## GD25Q64cs boot2-gd25q64cs = [] ## generic-03h boot2-generic-03h = [] ## IS25LP080 boot2-is25lp080 = [] ## ram-memcpy boot2-ram-memcpy = [] ## W25Q080 boot2-w25q080 = [] ## W25X10cl boot2-w25x10cl = [] [dependencies] embassy-sync = { version = "0.5.0", path = "../embassy-sync" } embassy-time = { version = "0.2", path = "../embassy-time", features = [ "tick-hz-1_000_000" ] } embassy-futures = { version = "0.1.0", path = "../embassy-futures" } embassy-hal-internal = {version = "0.1.0", path = "../embassy-hal-internal", features = ["cortex-m", "prio-bits-2"] } embassy-embedded-hal = {version = "0.1.0", path = "../embassy-embedded-hal" } embassy-usb-driver = {version = "0.1.0", path = "../embassy-usb-driver" } atomic-polyfill = "1.0.1" defmt = { version = "0.3", optional = true } log = { version = "0.4.14", optional = true } nb = "1.0.0" cfg-if = "1.0.0" cortex-m-rt = ">=0.6.15,<0.8" cortex-m = "0.7.6" critical-section = "1.1" futures = { version = "0.3.17", default-features = false, features = ["async-await"] } chrono = { version = "0.4", default-features = false, optional = true } embedded-io = { version = "0.6.0" } embedded-io-async = { version = "0.6.1" } embedded-storage = { version = "0.3" } embedded-storage-async = { version = "0.4.1" } rand_core = "0.6.4" fixed = "1.23.1" rp-pac = { version = "6" } embedded-hal-02 = { package = "embedded-hal", version = "0.2.6", features = ["unproven"] } embedded-hal-1 = { package = "embedded-hal", version = "=1.0.0-rc.3" } embedded-hal-async = { version = "=1.0.0-rc.3" } embedded-hal-nb = { version = "=1.0.0-rc.3" } pio-proc = {version= "0.2" } pio = {version= "0.2.1" } rp2040-boot2 = "0.3" document-features = "0.2.7" [dev-dependencies] embassy-executor = { version = "0.4.0", path = "../embassy-executor", features = ["arch-std", "executor-thread"] } static_cell = { version = "2" }