I'm working on a Windows Embedded Compact 7 based platform and am using the SABRE ARD BSP as a starting point. I'm having a problem understanding some aspects of the i.MX53 boot process on Power on Reset.
The SABRE ARD boot code uses a plugin in the Interrupt Vector Table as part of the boot process. The iMX53 reference manual states that the plugin must initialise the boot device and copy program image to final destination before returing with specified parameters. However the SABRE plugin code does not appear to copy the image. Also in some cases the plugin seems to perform a branch to a hardcoded Boot ROM address and this hard coded address depends on the rev of the silicon. The comments in the plugin code also refer to a number of functions (pu_irom_hwcnfg_setup and pl_parse_and_handle) that are relevent to the plugin process. I have been unable to find any reference anywhere to the use of these functions and to the use of to a hard-coded address and why these are required.
Can anyone clarify how this works?