LS1021a FBSL to Uboot Transition Clarification

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

LS1021a FBSL to Uboot Transition Clarification

ソリューションへジャンプ
1,878件の閲覧回数
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 解決策
1,775件の閲覧回数
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 返答(返信)
1,775件の閲覧回数
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.
-------------------------------------------------------------------------------

1,775件の閲覧回数
jiye
Contributor V

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

0 件の賞賛
返信
1,776件の閲覧回数
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.
-------------------------------------------------------------------------------