LS1021a FBSL to Uboot Transition Clarification

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

LS1021a FBSL to Uboot Transition Clarification

跳至解决方案
3,958 次查看
jiye
Contributor V

Hi,

I have been having this confusion for a long time and would like to throw it to here.

I know the Boot ROM will load the FSBL into the internal RAM and then FSBL will load the Uboot from boot source into DDR. 

My question is once FSBL is done (copy or load Uboot into DDR) who is in charge of executing the uboot binary?

In other words, who is initiating the uboot code to run (so as to load initramfs, dtb, kernel and linux) how does the who knows where to find the main loop in uboot to run it?

标签 (2)
1 解答
3,855 次查看
bpe
NXP Employee
NXP Employee

No. u-Boot is bootloader, not a regular OS task doing some job in a loop.
The boot CPU may spend time in different loops depending on the boot stage,
waiting for some IO status or user input, but basically there is no loop that
could be called "main".

The best way to familiarize with the execution flow inside u-Boot is to run it
under control of a source-level debugger. Refer to the appnote mentioned above.


Have a great day,
Platon

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

在原帖中查看解决方案

3 回复数
3,855 次查看
bpe
NXP Employee
NXP Employee

It is not clear what was meant with "FSBL". This is acronym is not used
in NXP or u-Boot documentation.  If you meant TF-A, it does not support your
platform. The valid boot flow for LS1021A is described here. u-Boot is the
first external code that receives control. u-Boot can be multiple stages,
but that depends on the boot memory and u-Boot build time configuration.
Some details of the execution flow inside u-Boot can be found in AN4956

Hope this helps,
Platon

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

3,855 次查看
jiye
Contributor V

In other words, there is a main loop in uboot as well

0 项奖励
回复
3,856 次查看
bpe
NXP Employee
NXP Employee

No. u-Boot is bootloader, not a regular OS task doing some job in a loop.
The boot CPU may spend time in different loops depending on the boot stage,
waiting for some IO status or user input, but basically there is no loop that
could be called "main".

The best way to familiarize with the execution flow inside u-Boot is to run it
under control of a source-level debugger. Refer to the appnote mentioned above.


Have a great day,
Platon

 

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------