Skip to main content
Visitor II
July 17, 2026
Question

STM32u5A5AJHXQ Trust Zone Application With SBSFU

  • July 17, 2026
  • 0 replies
  • 15 views

Dear ST Team,

              

I am currently porting an SBSFU/Trust Zone -based application from the STM32U585 to the STM32U5A5. The migration is almost complete, and the bootloader is functioning as expected.

    The following operations complete successfully:

  • BL2/SBSFU boots correctly.
  • Image authentication and verification succeed.
  • The application vector table is read correctly.
  • The application jump is initiated using:boot_jump_to_next_image((uint32_t)&boot_jump_to_next_image, vt->reset);

    Both addresses appear to be valid:

  • MSP points to Secure SRAM.
  • Reset vector points to Secure Flash with the Thumb bit set.

The application successfully reaches the Reset_Handler, so the jump from SBSFU to the application appears to be successful.

However, during the startup code, execution gets stuck while clearing the .bss section.

The relevant startup code is shown below:

ldr r2, =_sbss

b   LoopFillZerobss

 

FillZerobss:

    movs r3, #0

    str  r3, [r2], #4

 

LoopFillZerobss:

    ldr r3, =_ebss

    cmp r2, r3

    bcc FillZerobss

Execution remains in this loop (or eventually results in a HardFault), and the application never reaches main().

The application linker script uses:

MEMORY

{

RAM (xrw) : ORIGIN = 0x30000000, LENGTH = 256K /* Memory is divided. Actual start is 0x30000000 and actual length is 2512K */

SRAM4 (xrw) : ORIGIN = 0x38000000, LENGTH = 16K

FLASH (rx) : ORIGIN = 0x0C032000, LENGTH = 512K /* Memory is divided. Actual start is 0x0C000000 and actual length is 4096K */

FLASH_NSC (rx) : ORIGIN = 0x0C0B2000, LENGTH = 8K /* Non-Secure Call-able region */

}

Since the application reaches Reset_Handler, we believe the boot jump is correct. We suspect there may be an issue related to the Secure RAM layout, linker configuration, or TrustZone/GTZC configuration after migrating from the STM32U585 to the STM32U5A5.

Could you please advise:

  1. Whether there are any additional changes required in the SBSFU memory layout when migrating to the STM32U5A5.
  2. Whether the Secure RAM configuration should be modified for the STM32U5A5.

  3. Any known issues that could cause the startup code to fail while clearing the .bss section after a successful jump from SBSFU.

Any guidance on debugging this will be helpful.

Thank you for your support.