Skip to main content
AGamb.4
Associate II
February 9, 2022
Question

Start Linux Kernel from TF-A

  • February 9, 2022
  • 4 replies
  • 2356 views

Hello, I want to boot Linux straight from the FSBL, avoiding SP-Min and U-Boot. Is there any configuration or information on how to do this? Thank you.

 

I got a STM32MP157F-EV1 board, I wouldn't mind using TF-A or U_Boot SPL,

 

I am also looking at U-Boot SPL Falcon mode but finding very little information about it.

4 replies

Olivier GALLIEN
Technical Moderator
February 11, 2022

Hi @AGamb.4​ ,

I can only provide you a generic direction.

Note that ST will not further support you and this require strong linux/Yocto skills.

This maybe possible from our distribution, by generating a self-extracting zImage of Linux containing uImage + ramfs + dtb

Load and execution address are provided at build time.

Then you have to change tsv flashlayout in order to host this zImage in place of the legacy fsbl.

Else, what reason to drop FSBL ?

If it's for boot time optimization purpose maybe this page would give you some alternative :

How to optimize the boot time - stm32mpu

Olivier

Olivier GALLIEN In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
AGamb.4
AGamb.4Author
Associate II
February 11, 2022

Hello @Community member​ , thank you for your reply, any help you can provide will be welcome. I will look into the zImage possible solution.

The reasons are project restrictions to reduce code and dependence on third party software.

The objective right now is not exactly dropping FSBL but dropping SSBL and customize FSBL (TF-A or U-Boot SPL).

Do you provide any support on using U-Boot SPL? maybe with Falcon mode? And about customizing TF-A or U-Boot SPL?

PS: I got a STM32MP157F-EV1 board.

Andrés

Visitor II
January 29, 2024

did you get any further with falcon mode oder any TF-A -> Kernel booting?

Associate
September 12, 2025

In case anyone is still interested, I got it to work by modifying TF-A as per the wiki article and adding the following build flags to TF-A:

 

BL33=$(BINARIES_DIR)/zImage BL33_CFG=$(BINARIES_DIR)/stm32mp135f-dk.dtb

 

Also, don't forget to disable U-Boot in the menuconfig for TF-A.

More information here: STM32MP135 Without U-Boot

 

 

Erwan SZYMANSKI
Technical Moderator
September 12, 2025

Hello @js216 ,
Thank you for your sharing and congrats for this article based on Buildroot distribution !

Kind regards,
Erwan.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.