[package] name = "imxrt-hal" authors = [ "Tom Burdick ", "Ian McIntyre ", ] description = """ Hardware abstraction layer for NXP i.MX RT microcontrollers. """ readme = "README.md" repository = { workspace = true } keywords = { workspace = true } categories = { workspace = true } license = { workspace = true } edition = { workspace = true } version = "0.5.9" [dependencies.cfg-if] version = "1.0" [dependencies.bitflags] version = "1.3" [dependencies.fugit] version = "0.3" # For EH02 CountDown. [dependencies.void] version = "1" default-features = false [dependencies.nb] version = "1" [dependencies.futures] version = "0.3.30" default-features = false features = ["async-await"] [dependencies.eh02] package = "embedded-hal" version = "0.2.6" [dependencies.eh1] package = "embedded-hal" version = "1.0.0" [dependencies.eio06] package = "embedded-io" version = "0.6.1" [dependencies.rand_core] version = "0.5" default-features = false optional = true # This is an indirect dependency through imxrt-ral; # imxrt-ral depends on `ral-registers 0.1.0`, # but we are using newer features. [dependencies.ral-registers] version = "0.1.3" ####################### # imxrt-rs dependencies ####################### [dependencies.imxrt-dma] workspace = true [dependencies.imxrt-iomuxc] workspace = true [dependencies.imxrt-ral] workspace = true [dependencies.imxrt-usbd] workspace = true optional = true [package.metadata.docs.rs] default-target = "thumbv7em-none-eabihf" features = ["imxrt-ral/imxrt1062", "imxrt1060"] ############### # Chip features ############### [features] default = ["imxrt-usbd"] imxrt1010 = ["imxrt-iomuxc/imxrt1010"] imxrt1020 = ["imxrt-iomuxc/imxrt1020"] imxrt1060 = ["imxrt-iomuxc/imxrt1060"] imxrt1064 = ["imxrt-iomuxc/imxrt1060"] imxrt1170 = ["imxrt-iomuxc/imxrt1170"] ################ # Extra features ################ # Enable implementations for EH02 "unproven" traits. # Requires the EH02 "unproven" feature. eh02-unproven = [] [workspace] members = ["board", "logging"] [workspace.dependencies] imxrt-dma = "0.1" imxrt-iomuxc = "0.2.1" imxrt-hal = { version = "0.5", path = "." } imxrt-log = { path = "logging", default-features = false, features = [ "log", "lpuart", "usbd", ] } imxrt-ral = "0.5" imxrt-rt = "0.1" imxrt-usbd = "0.2" [workspace.package] repository = "https://github.com/imxrt-rs/imxrt-hal" keywords = ["imxrt", "nxp", "embedded", "no_std", "embedded-hal"] categories = ["embedded", "no-std"] license = "MIT OR Apache-2.0" edition = "2021" [profile.dev] opt-level = 1 panic = "abort" [profile.release] opt-level = "z" lto = "fat" panic = "abort" overflow-checks = true debug = 2 [profile.dev.build-override] opt-level = 0 codegen-units = 256 [profile.release.build-override] opt-level = 0 codegen-units = 256 ###################################### # Configurations for hardware examples ###################################### [dev-dependencies] cortex-m = "0.7" imxrt-rt = { workspace = true } menu = "0.3.2" rtic = { version = "2.0", features = ["thumbv7-backend"] } log = "0.4" defmt = "0.3" pin-utils = "0.1" usb-device = { version = "0.2", features = ["test-class-high-speed"] } usbd-serial = "0.1" usbd-hid = "0.6" [target.'cfg(all(target_arch = "arm", target_os = "none"))'.dev-dependencies] board = { path = "board" } [[example]] name = "async_dma_spi" required-features = ["board/spi"] [[example]] name = "rtic_spi_blocking" required-features = ["board/spi"] [[example]] name = "rtic_spi_controller" required-features = ["board/spi"] [[example]] name = "rtic_spi_peripheral" required-features = ["board/spi"] [[example]] name = "rtic_spi" required-features = ["board/spi"] [[example]] name = "hal_logging" required-features = ["board/imxrt-log"] [[example]] name = "hal_tempmon" required-features = ["board/imxrt-log"] [[example]] name = "hal_trng" required-features = ["board/imxrt-log"] [[example]] name = "rtic_logging" required-features = ["board/imxrt-log"] [[example]] name = "rtic_defmt_rtt" [[example]] name = "hal_i2c_lcd1602" required-features = ["board/lcd1602"] [patch.crates-io.usbd-hid-macros] git = "https://github.com/imxrt-rs/usbd-hid.git" branch = "patch-imxrt-hal-0.5"