Expand description
Generate i.MX RT boot-time data structures.
§Rationale
i.MX RT processors require certain data structures in order to configure FlexSPI and SEMC peripherals. The data structures must be placed in a certain region of memory with values that describe how a peripheral should interact with external storage. The data structures only support certain values, and need a particular layout in order to boot the system.
The imxrt-boot-gen crate helps you generate data structures to boot i.MX RT processors.
As of this writing, the API supports
- serial NOR flash via FlexSPI
Other configurations, like NAND flash and parallel SEMC, may be added in the future.
imxrt-boot-gen does not perscribe a way to properly place these data structures in a
firmware image. Consider using imxrt-rt if you need
a runtime that can place these data structures in your firmware image.
§Usage
Add imxrt-boot-gen to your dependencies, and select your processor with a feature flag:
[dependencies]
imxrt-boot-gen = { features = ["imxrt1060"] }The entire API is const. You may define your data structures at compile
time, and assign the values to static memory in your embedded program.
See the module-level documentation for more information about the API.
§Features
The crate requires a feature selection. Features correlate to i.MX RT processor families. The supported features are listed below.
"imxrt1010""imxrt1020""imxrt1060""imxrt1064""imxrt1170""imxrt1180"
§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.
Modules§
- FlexSPI configuration block definitions
- Serial NOR flash boot