Skip to main content
Explorer II
December 31, 2025
Question

STM32MP135F eMMC boot partition

  • December 31, 2025
  • 2 replies
  • 370 views

Hello,

 

I am using a STM32MP135F on a custom board which is working well using SD Card (sdmmc1).

The SDCard is partitioned as: 

1) fsbl1

2) fsbl2

3) fip

4) bootfs

5) rootfs

From the SDcard system, I try to prepare the eMMC (4GB, sdmmc2).
I tried different configurations:
- mmcblk1p1boot0 (and boot1) contains fsbl1 (tf-a*.stm32), mmcblk1p1 contains fip => Could NOT find the fip partition! (although it contains the right GUID for fip partition 19...)

- mmcblk1p1boot0 contains fsbl1 (tf-a*.stm32) and fip (at offset 256KB => dd seek=512 bs=512) with 

STM32MP_EMMC_BOOT=1 => FIP magic failed (get_boot_part_fip_header: eMMC boot magic at offset 256K: 0a040001 / boot_mmc: Can't find FIP header on eMMC boot partition. Trying GPT. VERBOSE: MBR boot signature failure
VERBOSE: Failed to access image id=3 (-2)
ERROR: Failed to parse partition with image id = 3
ERROR: Could NOT find the fip partition!
- The MMC partconf is:
STM32MP> mmc partconf 1 
EXT_CSD[179], PARTITION_CONFIG:
BOOT_ACK: 0x1
BOOT_PARTITION_ENABLE: 0x1 (boot0)
PARTITION_ACCESS: 0x0 (user)

The BOOT_ACK is often erase and I have to renable it manually via u-boot on SDCard.
When I read back boot0 and boot1 at offset, the expected magic is present. Do you have an eMMC mapping for simple boot (the update & secure boot will be implemented later) to boot from eMMC successfully?

For information, please find the arguments for TFA:

EXTRA_OEMAKE:append:pn-trusted-firmware-a = " \
 ARCH=aarch32 ARM_ARCH_MAJOR=7 \
 AARCH32_SP=optee \
 DTB_FILE_NAME=myb-stm32mp135x-512m.dtb \
 STM32MP1_OPTEE_IN_SYSRAM=0 \
 BL32=${DEPLOY_DIR_IMAGE}/optee/tee-header_v2.bin \
 BL32_EXTRA1=${DEPLOY_DIR_IMAGE}/optee/tee-pager_v2.bin \
 BL32_EXTRA2=${DEPLOY_DIR_IMAGE}/optee/tee-pageable_v2.bin \
 BL33_CFG=${DEPLOY_DIR_IMAGE}/u-boot.dtb \
 STM32MP_EMMC=1 \
 STM32MP_SDMMC=1 \
 STM32MP_EMMC_BOOT=1 \
 BL33=${DEPLOY_DIR_IMAGE}/u-boot-nodtb.bin \
 STM32MP13=1 \
 STM32MP15=0 \
 LOG_LEVEL=50 \
"

 

Thank you for your help and I wish you a happy new year! 

2 replies

PatrickF
Technical Moderator
January 5, 2026
In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.NEW ! Sidekick STM32 AI agent, see here
Associate
January 23, 2026

I think I have the same issue. I think the problem is the placement of image 2; BL32 aka u-boot. My current solution is to rebuilt the fib manually with --align 2048. I don't see any alignment options that can be set via the environment.