This manual describes the generation of bootable image for i.MX MCU devices and the process to program a bootable image into the external flash.
This document explains how to generate bootable images for i.MX MCU devices and program them into external flash memory. It covers interfacing the Boot ROM with KBOOT-based Flashloader, using tools like Elftosb, MfgTool, and cst to create, sign, and encrypt images. The guide details image formats, boot configurations, and programming procedures for various flash types including QuadSPI NOR, eMMC, and SD.
The document also describes the roles of the Boot ROM and Flashloader, including their interaction with host utilities via serial interfaces like USB, UART, I2C, and SPI. It provides technical details on boot image structures such as IVT, boot data, and DCD, along with encryption and signing methods for secure boot scenarios.
| Flashloader | Runs in SRAM, facilitates loading boot images, authenticates and executes them |
|---|---|
| Supported Flash Types | QuadSPI NOR/Octal Flash/HyperFLASH, Serial NAND, eMMC, SD, Parallel NOR, SLC raw NAND, SPI NOR/EEPROM |
The Elftosb utility converts ELF images to signed, encrypted, bootable images. It also generates boot structures and command files for signing/encrypting using the NXP signing tool (cst).
The Flashloader runs in SRAM and is downloaded via ROM serial download interface. It prepares devices for boot, creates boot configuration, and communicates with the host using kboot commands over serial peripherals.
The SB file is the NXP binary format for bootable images, containing sections, bootloader commands, and data to assist Kinetis Bootloader in programming the image to target memory.