Skip to main content
Visitor II
March 17, 2023
Question

How to make TFA redundant and how to make ROM code select different partitions of FSBL?

  • March 17, 2023
  • 1 reply
  • 4269 views

In stm32mp157, I need two partitions for FSBL, and it is working correctly, but I want to make TFA redundant meaning I should be able to update the second partition of FSBL and then shift it on the second partition on restart.

I have made roofs redundant, but then I used environment variables inside U-BOOT to switch partitions. TFA (BL2) runs instantly after the ROM code, and I cannot change that.

Is there any solution that I can do here? What is the purpose of having two FSBL partitions if it is not for redundant TFA?

    This topic has been closed for replies.

    1 reply

    Technical Moderator
    March 17, 2023

    Hi @ZUl A.1​ ,

    read https://wiki.st.com/stm32mpu/wiki/STM32_MPU_ROM_code_overview

    FSBL redundancy is there just in case of flash memory corruption.

    Number of versions depends of flash type.

    But there's no mechanism to force bootrom to select one partition, and so FSBL is not part of Secure Firmware Update feature present from DV4.0.

    Secure Firmware Update - stm32mpu

    But note that there's no need to update BL2 starting from DV4 version.(v2.6-stm32mp-r1)

    ST guarantee its compatibilty for all coming versions.

    Olivier

    ZUl A.1Author
    Visitor II
    March 17, 2023

    So what is the mechanism for flash memory corruption? If the FSBL1 is not working it will automatically goes to the FSBL2?

    Technical Moderator
    March 17, 2023

    Yes. The ROM code tries to load and launch the first copy. In the case of failure, it then tries to load the second copy.

    Olivier