# 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" rust-version = "1.79.0" name = "esp-hal" version = "0.22.0" build = "build.rs" links = "esp-hal" autolib = false autobins = false autoexamples = false autotests = false autobenches = false description = "Bare-metal HAL for Espressif devices" documentation = "https://docs.esp-rs.org/esp-hal/" readme = "README.md" license = "MIT OR Apache-2.0" repository = "https://github.com/esp-rs/esp-hal" [package.metadata.docs.rs] default-target = "riscv32imac-unknown-none-elf" features = ["esp32c6"] rustdoc-args = [ "--cfg", "docsrs", ] [lib] name = "esp_hal" path = "src/lib.rs" [dependencies.bitfield] version = "0.17.0" [dependencies.bitflags] version = "2.6.0" [dependencies.bytemuck] version = "1.19.0" [dependencies.cfg-if] version = "1.0.0" [dependencies.chrono] version = "0.4.38" default-features = false [dependencies.critical-section] version = "1.2.0" [dependencies.defmt] version = "0.3.8" optional = true [dependencies.delegate] version = "0.13.1" [dependencies.digest] version = "0.10.7" optional = true default-features = false [dependencies.document-features] version = "0.2.10" [dependencies.embassy-embedded-hal] version = "0.2.0" [dependencies.embassy-futures] version = "0.1.1" [dependencies.embassy-sync] version = "0.6.0" [dependencies.embassy-usb-driver] version = "0.1.0" optional = true [dependencies.embassy-usb-synopsys-otg] version = "0.1.0" optional = true [dependencies.embedded-can] version = "0.4.1" [dependencies.embedded-hal] version = "1.0.0" [dependencies.embedded-hal-02] version = "0.2.7" features = ["unproven"] package = "embedded-hal" [dependencies.embedded-hal-async] version = "1.0.0" [dependencies.embedded-hal-nb] version = "1.0.0" [dependencies.embedded-io] version = "0.6.1" [dependencies.embedded-io-async] version = "0.6.1" [dependencies.enumset] version = "1.1.5" [dependencies.esp-synopsys-usb-otg] version = "0.4.2" features = [ "fs", "esp32sx", ] optional = true [dependencies.esp32] version = "0.34.0" features = [ "critical-section", "rt", ] optional = true [dependencies.esp32c2] version = "0.23.0" features = [ "critical-section", "rt", ] optional = true [dependencies.esp32c3] version = "0.26.0" features = [ "critical-section", "rt", ] optional = true [dependencies.esp32c6] version = "0.17.0" features = [ "critical-section", "rt", ] optional = true [dependencies.esp32h2] version = "0.13.0" features = [ "critical-section", "rt", ] optional = true [dependencies.esp32s2] version = "0.25.0" features = [ "critical-section", "rt", ] optional = true [dependencies.esp32s3] version = "0.29.0" features = [ "critical-section", "rt", ] optional = true [dependencies.fugit] version = "0.3.7" [dependencies.log] version = "0.4.22" optional = true [dependencies.nb] version = "1.1.0" [dependencies.paste] version = "1.0.15" [dependencies.portable-atomic] version = "1.9.0" default-features = false [dependencies.procmacros] version = "0.15.0" features = [ "enum-dispatch", "interrupt", "ram", ] package = "esp-hal-procmacros" [dependencies.rand_core] version = "0.6.4" [dependencies.riscv] version = "0.12.1" optional = true [dependencies.strum] version = "0.26.3" features = ["derive"] default-features = false [dependencies.ufmt-write] version = "0.1.0" [dependencies.usb-device] version = "0.3.2" optional = true [dependencies.void] version = "1.0.2" default-features = false [dependencies.xtensa-lx] version = "0.9.0" optional = true [build-dependencies.basic-toml] version = "0.1.9" [build-dependencies.cfg-if] version = "1.0.0" [build-dependencies.esp-build] version = "0.1.0" [build-dependencies.esp-config] version = "0.2.0" features = ["build"] [build-dependencies.esp-metadata] version = "0.4.0" [build-dependencies.serde] version = "1.0.215" features = ["derive"] [features] __esp_hal_embassy = [] bluetooth = [] ci = [ "defmt", "bluetooth", ] debug = [ "esp32?/impl-register-debug", "esp32c2?/impl-register-debug", "esp32c3?/impl-register-debug", "esp32c6?/impl-register-debug", "esp32h2?/impl-register-debug", "esp32s2?/impl-register-debug", "esp32s3?/impl-register-debug", ] default = [] defmt = [ "dep:defmt", "embassy-futures/defmt", "embassy-sync/defmt", "embedded-hal/defmt-03", "embedded-io/defmt-03", "embedded-io-async/defmt-03", "esp32?/defmt", "esp32c2?/defmt", "esp32c3?/defmt", "esp32c6?/defmt", "esp32h2?/defmt", "esp32s2?/defmt", "esp32s3?/defmt", "fugit/defmt", ] esp32 = [ "dep:esp32", "xtensa", "xtensa-lx/spin", "xtensa-lx-rt/esp32", ] esp32c2 = [ "dep:esp32c2", "riscv", "portable-atomic/unsafe-assume-single-core", ] esp32c3 = [ "dep:esp32c3", "riscv", "portable-atomic/unsafe-assume-single-core", "esp-riscv-rt/rtc-ram", ] esp32c6 = [ "dep:esp32c6", "riscv", "procmacros/has-lp-core", "esp-riscv-rt/rtc-ram", ] esp32h2 = [ "dep:esp32h2", "riscv", "esp-riscv-rt/rtc-ram", ] esp32s2 = [ "dep:esp32s2", "xtensa", "portable-atomic/critical-section", "procmacros/has-ulp-core", "xtensa-lx-rt/esp32s2", "usb-otg", ] esp32s3 = [ "dep:esp32s3", "xtensa", "procmacros/has-ulp-core", "xtensa-lx/spin", "xtensa-lx-rt/esp32s3", "usb-otg", ] flip-link = ["esp-riscv-rt/fix-sp"] log = ["dep:log"] octal-psram = [] quad-psram = [] riscv = [ "dep:riscv", "critical-section/restore-state-u8", ] usb-otg = [ "dep:embassy-usb-driver", "dep:embassy-usb-synopsys-otg", "dep:esp-synopsys-usb-otg", "dep:usb-device", ] xtensa = [ "dep:xtensa-lx", "critical-section/restore-state-u32", ] [target.'cfg(target_arch = "riscv32")'.dependencies.esp-riscv-rt] version = "0.9.1" [target.'cfg(target_arch = "xtensa")'.dependencies.xtensa-lx-rt] version = "0.17.2" [lints.clippy] mixed_attributes_style = "allow" [lints.rust.unexpected_cfgs] level = "warn" priority = 0 check-cfg = ['cfg(host_os, values("windows"))']