CL-SOM-iMX7: U-Boot: Firmware Overview
Contents
Introduction
This article describes the firmware for CL-SOM-iMX7 system-on-module / Computer-on-Module. CL-SOM-iMX7 firmware consists of a single binary: U-Boot image. The i.MX7 boot ROM tries to boot U-Boot from either SD card, or SPI flash, as determined by the hardware boot selector (ALT BOOT button). U-Boot initializes hardware modules necessary for system boot and loads the operating system.
U-Boot
U-Boot is the bootloader used on CL-SOM-iMX7. It allows flexible selection of operating system boot modes, provides scripting facilities and command line interface through a serial port. U-Boot allows booting operating system from the on-board eMMC flash, removable storage (e.g. USB drive, SD/MMC card), or the network (TFTP/NFS server).
Please consult U-Boot quick reference and U-Boot project documentation for U-Boot features and commands description.
U-Boot environment
U-Boot environment resides on the SPI flash, regardless of the boot source. The environment resides at offset 0xC0000 from the start of SPI flash, and its size is 8KiB.
Boot sources
CL-SOM-iMX7 can boot from either a micro SD card, or the on-board SPI flash.
The following sections describe the layout of each storage type.
Default CL-SOM-iMX7 storage device mapping
Offset | Size | Description |
---|---|---|
0x0 (0KB) | 0xc0000 (768KB) | U-Boot |
0xc0000 (768KB) | 0x40000 (256KB) | U-Boot environment |
0x100000 (1MB) | Remaining SPI flash space | Splash image |
Offset | Size | Description |
---|---|---|
0x0 (0KB) | 0x980000 (9.5MB) | Kernel (zImage) |
0x980000 (9.5MB) | 0x80000 (512KB) | Device Tree blob (.dtb) |
0xa00000 (10MB) | Remaining NAND flash space | Root filesystem |
Offset | Size | Description |
---|---|---|
0x0 (0KB) | 0x400 (1KB) | Reserved/MBR |
0x400 (1KB) | 0xffc00 (999KB) | U-Boot |
0x100000 (1MB) | Remaining SD-card space | Partitions/Filesystems/Data |