2026-06-03 9:28 AM - last edited on 2026-06-03 9:45 AM by mƎALLEm
Hi,
I am using the STM32H745I-DISCO board and trying to boot an application from the external QSPI flash (MT25QL512ABB).
For this purpose, I created two separate projects:
Bootloader Project
Initializes the QSPI flash.
Configures the QSPI in Memory-Mapped mode.
Jumps to the application stored in the external QSPI flash.
Application Project
Modified the linker script (.ld file) to change the application start address from 0x08000000 to 0x90000000.
Added the following statements in CM7/Common/Src/system_stm32h7xx.c (around lines 295–296) inside SystemInit():
RCC->CFGR = 0; SCB->VTOR = QSPI_BASE;
After building the application, I generated the .bin file and programmed it into the QSPI flash using STM32CubeProgrammer.
When I read back the contents from address 0x90000000 using CubeProgrammer, I can see valid data programmed in the flash (screenshot attached).
However, while debugging the bootloader, I observed the following issues:
The code enters the HardFault_Handler() before executing JumpToApplication();.
The value of JumpToApplication is observed as 0x00000000 in the debugger.
As a result, the application is not started from the QSPI flash.
I have attached the bootloader project, application project, and screenshots for reference.
Could you please review the projects and help identify the issue? This is an urgent requirement, and your assistance would be greatly appreciated.
Thank you.
2026-06-03 9:43 AM - edited 2026-06-03 9:44 AM
Hello @Sunil_13 and welcome to the ST community,
Please refer to the AN5188 "How to execute code from external memory on STM32F7 and STM32H750/H7B0/
H730 MCUs"
You can inspire from what was implemented on STM32H750B-DK board:
1- Boot application located in the internal Flash: https://github.com/STMicroelectronics/STM32CubeH7/tree/master/Projects/STM32H750B-DK/Templates/ExtMem_Boot
2- Any of the examples that are executed in the QSPI: https://github.com/STMicroelectronics/STM32CubeH7/tree/master/Projects/STM32H750B-DK/Examples
Good luck.
We’re moving the ST Community to a new platform to give you a better and more reliable community experience.