Overview
i.MX RT BootROM
The i.MX RT BootROM is a standard bootloader for all i.MX RT devices. It resides in ROM and supports booting from external flash devices for both XIP and non-XIP boot cases. It also provides serial downloader feature via UART or USB-HID interface into the internal RAM of i.MX RT devices.
The i.MX RT BootROM is a specific implementation of the existing i.MX MPU ROM bootloader. The i.MX RT BootROM provides serial downloader feature for flash programming using SDP command interface. For additional information, see chapter, “System Boot” in the *i.MX RT1050 Processor Reference Manual (document IMXRT1050RM). Using the MfgTool application, the MCU Boot based flashloader can be downloaded into the internal SRAM. Then the flashloader code execution begins and flash programming features are enabled via MCU Boot interface.
MCUBOOT-based Flashloader
The MCUBOOT-based Flashloader is a specific implementation of the MCU bootloader. It is used as a one-time programming aid for manufacturing. Most of the MCUBOOT commands are supported in the flashloader to enable external flash programming. See MCU Flashloader Reference Manual for details.
Host utilities
The MfgTool is a GUI host program used to interface with devices running i.MX RT Boot ROM under serial downloader mode. It can also be used to program an application image by interfacing with the Flashloader.
The blhost is a command-line host program used to interface with devices running MCUBOOT-based bootloaders. It is part of MfgTool release.
The elftosb utility is a command-line host program used to generate bootable images for i.MX RT Boot ROM.
The cst is a command-line host program used to generate certificates, image signatures, and encrypt images for i.MX RT Boot ROM.
The sdphost
is a command-line host program used to communicate with i.MX RT BootROM using SDP command interfaces.
Terminology
The table given below summarizes the terms and abbreviations included in this document.
Terminology |
Description |
---|---|
MCUBOOT |
MCU Bootloader |
KeyBlob |
KeyBlob is a data structure that wraps the DEK for image decryption using the AES-CCM. algorithm |
DEK |
“Key” used to decrypt the encrypted bootable. image |
SB file |
The SB file is the NXP binary file format for bootable images. |
CST |
Code Signing Tool |
XIP |
Execute-In-Place |