Hi,
Can anyone tell me start.s will execute.As i know that the uboot will initialise the CPU and SD RAM and then relocate itself to RAM.But before copying and executing in the RAM where does the start.s will execute?
Rgds,
"Santosh"
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
Can anyone tell me start.s will execute.As i know that the uboot will initialise the CPU and SD RAM and then relocate itself to RAM.But before copying and executing in the RAM where does the start.s will execute?
Rgds,
"Santosh"
Santosh,
The ROM code will copy the u-boot binary in to the internal OCMC memory and jump to the _start symbol defined in the start.S file
This piece of code will initialise CPU (cpu_init_crit) and the DDR memory and will copy itself to the DDR and start running from there.
Till this point the u-boot code is executing from the OCMC RAM .
I hope this will clear you doubt. Please let me know if you need any further assistance.
Regards,
Deepu Raj
Before relocating, u-boot will be executing from Internal Ram (Address depends on Platform). What is your platform & which board.
Regards
Gururaja
Current SDK versions 5.03.02 for processors such as AM37x or AM335x use a multi-stage load, ROM does not load u-boot directly but a mini u-boot called SPL first, this then loads u-boot. The SPL is the one that sets the clocks and DDR settings and runs out of internal RAM. After DDR is setup the full u-boot is then loaded into DDR.
CONFIG_SYS_TEXT_BASE is used to define the _start address. This is defined in the board config file in the include/configs directory.