Hello,
Do You mean bare metal or Linux applications ? Is the mentioned bootloader
Your own one or U-boot ?
It is possible to use i.MX boot ROM to load and run bare metal
applications. Generally, iMX6 UL boot process is described in Chapter 8 (System
Boot) of the Reference Manual. For example, for SD boot , the loading boot data
from boot SD card is performed in two stages :
first read IVT, DCD, then read executable code, using the Boot Data Structure.
At first, boot ROM copies 4K byte (containing IVT and DCD ) from sector 0
of the boot SD card to internal buffer in OCRAM, located in reserved area
(0x00900000 0x00907000). This area must not be used by user application.
Then, “after checking the Image Vector Table header value (0xD1) from Program
Image, the ROM code performs a DCD check. After successful DCD extraction,
the ROM code extracts from Boot Data Structure the destination pointer and length
of image to be copied to RAM device from where code execution occurs”.
The IVT contains field entry as absolute address of the first instruction to execute
from the image.
Note : according to Figure 8-3 (Internal ROM and RAM memory map), only OCRAM
Free Area (68KB) from 0x00907000 till 0x00918000 may be used by user’s application.
U-boot may be considered as good example for bare metal application,
that may be load by i.MX6 UL boot ROM.
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!