2026-04-21 5:54 AM
Hi everybody,
For a project, we need to start the STM32MP257F in the M33 flavor, in order to perform some basic functions (GPIO, I2C, UART) in the lowest power mode possible (DDR unpowered, A35 in low power mode — i.e., no remoteproc nor Linux). The goal is to compare MP257 capabilities compared to IMX8 (goal line end of this month)
I use Yocto/bitbake to compile for our custom board.
Following the StarterApp_M33TD_CM33 example, I've encountered the following difficulties:
1) How can I debug the BL2 part?
From the post STM32MP257 programming via JTAG - STMicroelectronics Community , I see that JTAG can be used to debug the STM32MP257 using CubeIDE.
2) How can this be done?
I tried to modify the *.ld file used by StarterApp_M33TD_CM33 to place the code in internal RAM instead of DDR, but it doesn't work. On the UART console I see BL2 logs, but nothing from this app, and since I can't debug, I don't know what's happening.
3) How do I modify the project/Device Tree or other elements to execute this code only in internal RAM?
4) I need to check if the STM32MP257F can be put into a mode with power consumption below 200mW. Is this realistic?
5) Is it possible to modify the clock and PMIC configuration in BL2 mode in order to achieve a low power mode? If yes, where should this be done?
Can someone helps me @Gregory PLANCHON, @Olivier GALLIEN , @Christophe Guibout, @PatrickF , someone else ?
Thanks for your help
2026-04-21 7:44 AM
Hello @Aurelien1 ,
I won't be able to reply to all your questions by myself, but I can help you with the first one.
@Aurelien1 wrote:
1) How can I debug the BL2 part?
I assume you are doing the investigation on one of ST board, surely the STM32MP257F-EV1 board.
I don't know if you read this wiki page, but it was created to explain how to debug the BL2, Trusted-firmware-m and the Non secure App:
How_to_import,_build_and_debug_STM32CubeMP2_StarterAppM33TD_demonstration_in_STM32CubeIDE#Debug_bl2
In this page, we explain how to configure and use the StarterApp_M33TD Demonstration, so the same one that you are trying to use.
The page was created with the previous version of the tools, so there is maybe some little adaptation to do if you are using CubeMX 6.17.0 and CubeIDE 2.1.1 (the latest versions), but the content is still relevant.
For the debug, we explain how to use the ST-LINK integrated to the STM32MP257F-EV1 board.
I do not have any example with JTAG to provide, but regarding your request, I think using the integrated ST-LINK should be enough to test the power scenario.
@Aurelien1 wrote:2) How can this be done?
I tried to modify the *.ld file used by StarterApp_M33TD_CM33 to place the code in internal RAM instead of DDR, but it doesn't work. On the UART console I see BL2 logs, but nothing from this app, and since I can't debug, I don't know what's happening.
Never tried on my side for the M33-TD project, I will ask.
BR,
Kevin
2026-04-23 2:44 AM
Hi,
To provide more context, we use a custom board. I have access to UART debug (through FTDI), and JTAG/SWDIO can be connected through an ST-Link V3 Mini. Does ST-Link OpenOCD connect via UART or SWDIO?
I am using the project included in Yocto. Is there a difference?
I will retry with a fresh installation.
Can someone explain me how to use CubeMX to modify memory mapping (M33 code exclusively run in internal RAM) and mapped it to the project in StarterApp_M33TD compiled with CubeIDE ?