How saber sd boots directly from uboot without SPL

saber sd is based on imx-6, which has an internal RAM of about 150Kb. however, uboot is large enough to fit this space. How does everything work in this scenario? https://community.freescale.com/docs/DOC-95015

In this documentation, freescale only uboot is used to create an SD card to download saber sd.

+3
arm ubuntu operating-system kernel u-boot
source share
1 answer

Short answer: it doesn't matter how small the SRAM is, since the U-Boot itself is apparently not getting anywhere.

The main disadvantage is that the configuration of mx6qsabresd sets the entry point 0x17800000, which, according to the memory card in the reference guide, is the DRAM address. Now I don’t β€œknow” i.MX6 as such, but I can, of course, summarize what is said in the System Boot chapter of this manual (hey, that was interesting ...)

The internal ROM bootloader reads the first 4K images from the 0x400 offset of the SD card into the internal memory to look at the title. This header (in the u-boot.imx Image) contains the size and DRAM loading address of the U-Boot image along with the load of the configuration register data - from the building mx6qsabresd_config I see that this comes from board/freescale/mx6sabresd/mx6q_4x_mt41j128.cfg and, - Checking the addresses there with a peripheral card seems to basically configure the IOMUX and DRAM controller. The ROM code writes the configuration values ​​to the corresponding registers, DMA the entire image from the SD card directly to DRAM and goes to it.

+4
source share

All Articles