2025-11-11 12:09 AM - edited 2025-11-11 12:10 AM
Hello ,
I have developed a custom board using the STM32MP157DAA1. Its design is very similar to the STM32MP157-DK2.
I am trying to build and boot TF-A and OPTEE. However, I am encountering an "I/TC: Forced system reset PSCI" error, which causes the system to enter a programming loop.
Below is the CubeProgrammer log during this loop state:
16:33:55 : USB speed : High Speed (480MBit/s) 16:33:55 : Manuf. ID : STMicroelectronics 16:33:55 : Product ID : DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000 16:33:55 : SN : 002700303532510837363531 16:33:55 : DFU protocol: 1.1 16:33:55 : Board : -- 16:33:55 : Device ID : 0x0500 16:33:56 : Start Embedded Flashing service 16:33:56 : Opening and parsing file: tf-a-stm32mp157d-a_cv2-mx-optee-programmer-usb.stm32 16:33:56 : Memory Programming ... 16:33:56 : File : tf-a-stm32mp157d-a_cv2-mx-optee-programmer-usb.stm32 16:33:56 : Size : 220.41 KB 16:33:56 : Partition ID : 0x01 16:33:56 : Download in Progress: 16:33:58 : File download complete 16:33:58 : Time elapsed during download operation: 00:00:01.830 16:33:58 : RUNNING Program ... 16:33:58 : PartID: :0x01 16:33:58 : Start operation done successfully at partition 0x01 16:33:58 : Opening and parsing file: fip-stm32mp157d-a_cv2-mx-optee-programmer-usb.bin 16:33:58 : Memory Programming ... 16:33:58 : File : fip-stm32mp157d-a_cv2-mx-optee-programmer-usb.bin 16:33:58 : Size : 1.82 MB 16:33:58 : Partition ID : 0x03 16:33:58 : Download in Progress: 16:34:00 : File download complete 16:34:00 : Time elapsed during download operation: 00:00:02.113 16:34:00 : RUNNING Program ... 16:34:00 : PartID: :0x03 16:34:01 : Reconnecting the device ... 16:34:07 : USB speed : High Speed (480MBit/s) 16:34:07 : Manuf. ID : STMicroelectronics 16:34:07 : Product ID : DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000 16:34:07 : SN : 002700303532510837363531 16:34:07 : DFU protocol: 1.1 16:34:07 : Board : -- 16:34:07 : Device ID : 0x0500 16:34:07 : Device name : STM32MP157DAA Rev.Z 16:34:07 : Device type : 16:34:07 : Device CPU : 16:34:07 : Start operation done successfully at partition 0x03 16:34:07 : Opening and parsing file: tf-a-stm32mp157d-a_cv2-mx-optee-programmer-usb.stm32 16:34:07 : Memory Programming ... 16:34:07 : File : tf-a-stm32mp157d-a_cv2-mx-optee-programmer-usb.stm32 16:34:07 : Size : 220.41 KB 16:34:07 : Partition ID : 0x01 16:34:07 : Download in Progress: 16:34:08 : aborting on going operation... 16:34:08 : Operation canceled 16:34:08 : Error: failed to download Sector[0] 16:34:08 : Error: failed to download the File 16:34:08 : Error: Download partition 0x01 failed 16:34:08 : Error: TSV flashing service failed 16:34:08 : Disconnected from device.
I am attaching the TF-A Device Tree (DT), OPTEE DT, and the debug log from the flashing attempt.
Could you please help me identify the potential cause of this issue?
Thank you for your assistance.
2025-11-12 12:53 AM
Hello,
Let's put aside the Warning traces for the secure config (BTW, GPIOZ bank pins can be secured, and you can describe the pinctrl for the H pins using the STM32_PINMUX_NSEC() macro).
This looks like an early U-Boot crash, resetting the platform, can you try to enable early log in U-Boot?
Regards,
Gatien
2025-11-12 11:21 PM
Hello Gatien,
I was able to boot successfully by modifying the U-Boot device tree. Sorry for the trouble.
By the way, how can I fix these Warning traces you mentioned?
Regards,
2025-11-13 12:34 AM
Hello,
Cool. By securing the pins that can be secured(GPIOZ bank) and declaring the pins that cannot be secured with STM32_PINMUX_NSEC() instead of STM32_PINMUX(), as mentioned above :)
Regards,
Gatien