#run-time #rt #mx #startup #memory-map #processors

no-std imxrt-rt

Startup and runtime support for i.MX RT processors

6 releases

new 0.1.5 Oct 26, 2024
0.1.4 Apr 5, 2024
0.1.3 Oct 1, 2023
0.1.2 Sep 8, 2023
0.1.0 Dec 2, 2022

#106 in Embedded development

Download history 179/week @ 2024-07-06 473/week @ 2024-07-13 223/week @ 2024-07-20 167/week @ 2024-07-27 296/week @ 2024-08-03 194/week @ 2024-08-10 579/week @ 2024-08-17 163/week @ 2024-08-24 241/week @ 2024-08-31 164/week @ 2024-09-07 209/week @ 2024-09-14 406/week @ 2024-09-21 364/week @ 2024-09-28 312/week @ 2024-10-05 336/week @ 2024-10-12 404/week @ 2024-10-19

1,477 downloads per month
Used in 6 crates (2 directly)

MIT/Apache

69KB
1K SLoC

Rust 845 SLoC // 0.1% comments Alex 344 SLoC GDB Script 4 SLoC

imxrt-rt

Runtime and startup support for i.MX RT processors.

This crate builds on cortex-m-rt and adds support for i.MX RT processors. Using this runtime crate, you can specify FlexRAM sizes and section allocations, then use it to boot your i.MX RT processor.

The crate achieves this with

  • a build-time API to define the memory map.
  • a runtime library to configure the embedded processor.

To learn how to use this crate in your firmware, see the crate documentation. To try the runtime on hardware, see the board documentation.

Development

Run automated tests like this:

cargo test --tests
cargo test --doc
cargo test --tests -- --ignored

If you have pyOCD available, you can check the effects of the runtime initialization routine with GDB:

pyocd gdb --target=$YOUR_TARGET
arm-none-eabi-gdb < cmds.gdb

Make sure that the register values make sense for your target.

License

Licensed under either of

at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~245KB