Moved from MCUs forum: STM32MP13 is an MPU - not an MCU.
Hello Everyone,
I hope you’re doing well. I’m encountering a problem when trying to boot Linux directly instead of U-Boot on our STM32MP135F-DK board. Below is a summary of what I’ve done and the error I see:
1. Procedure followed
Built a new FIP binary and tf-a with the recommended changes and flags:
-> fiptool update --fw-config stm32mp135f-dk-fw-config.dtb --hw-config stm32mp135f-dk.dtb --nt-fw Image fip-stm32mp135f-dk-optee-sdcard.bin
Modified the TSV in the starter package to replace u-boot.bin with my Linux image and updated the FIP entries as follows:

2. Observed output:
NOTICE: CPU: STM32MP135F Rev.Y
NOTICE: Model: STMicroelectronics STM32MP135F-DK Discovery Board
NOTICE: Board: MB1635 Var1.0 Rev.E-02
INFO: PMIC version = 0x21
INFO: Reset reason (0x134):
INFO: IWDG1 Reset (rst_iwdg1)
INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe0000
INFO: FCONF: Reading firmware configuration information for: stm32mp_fuse
INFO: FCONF: Reading firmware configuration information for: stm32mp_io
INFO: Using SDMMC
INFO: Instance 1
INFO: Boot used partition fsbl1
NOTICE: BL2: v2.10-stm32mp1-r1.0(debug):()
NOTICE: BL2: Built : 11:24:11, May 19 2025
INFO: BL2: Doing platform setup
INFO: RAM: DDR3-1066 bin F 1x4Gb 533MHz v1.53
INFO: Memory size = 0x20000000 (512 MB)
INFO: BL2: Loading image id 1
INFO: Loading image id=1 at address 0x30006000
INFO: Image id=1 loaded: 0x30006000 - 0x30006236
INFO: FCONF: Reading FW_CONFIG firmware configuration file from: 0x30006000
INFO: FCONF: Reading firmware configuration information for: mce_config
INFO: FCONF: Reading firmware configuration information for: dyn_cfg
INFO: FCONF: Reading firmware configuration information for: stm32mp1_firewall
INFO: BL2: Loading image id 4
INFO: Loading image id=4 at address 0xde000000
INFO: Image id=4 loaded: 0xde000000 - 0xde00001c
INFO: OPTEE ep=0xde000000
INFO: OPTEE header info:
INFO: magic=0x4554504f
INFO: version=0x2
INFO: arch=0x0
INFO: flags=0x0
INFO: nb_images=0x1
INFO: BL2: Loading image id 8
INFO: Loading image id=8 at address 0xde000000
INFO: Image id=8 loaded: 0xde000000 - 0xde079418
INFO: BL2: Loading image id 2
INFO: Loading image id=2 at address 0xc3ff8000
INFO: Image id=2 loaded: 0xc3ff8000 - 0xc4007897
INFO: BL2: Skip loading image id 16
INFO: BL2: Loading image id 5
INFO: Loading image id=5 at address 0xc0000000
INFO: Image id=5 loaded: 0xc0000000 - 0xc15555cc
NOTICE: BL2: Booting BL32
INFO: Entry point address = 0xde000000
INFO: SPSR = 0x1d3
I/TC: Early console on UART#4
I/TC:
I/TC: Embedded DTB found
I/TC: OP-TEE version: 4.0.0-dev (gcc version 13.3.0 (GCC)) #1 Fri Oct 20 18:29:31 UTC 2023 arm
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
I/TC: Primary CPU initializing
I/TC: Override the OTP 18: 0x7afa0000 to 0x7afa01e0
I/TC: WARNING: Embeds insecure stm32mp_provisioning driver
I/TC: UART console (non-secure)
I/TC: Platform stm32mp1: flavor PLATFORM_FLAVOR - DT stm32mp135f-dk.dts
I/TC: OP-TEE ST profile: secure_and_system_services
I/TC: Primary CPU switching to normal world boot
E/TC:0 Panic 'Watchdog' at ?:0
Any guidance on which steps to double-check would be greatly appreciated.
you will find the tf-a and the fip created attached here
Thank you in advance for your help
Best regards,
Hassan Zaalouk