Skip to main content
JMD
Associate II
January 13, 2026
Solved

STM32MP153C root partition doesn't exist or does not contain a /dev

  • January 13, 2026
  • 4 replies
  • 452 views

Hello, 

Happy new year !

I create my custom board with STM32MP153C I try to boot but I have an issue. 

Starting systemd-udevd version 255.17^
root '/dev/disk/by-partuuid/e91c4e10-16e6-4c0e-bd0e-77becf4a3582' doesn't exist or does not contain a /dev.

[ 14.557600] platform 5a006000.usbphyc: deferred probe pending
[ 14.561992] platform 5800c000.usb: deferred probe pending
[ 14.567427] platform 50001000.pwr: deferred probe pending
[ 14.572778] platform 49000000.usb-otg: deferred probe pending
[ 14.578559] amba 58005000.mmc: deferred probe pending
[ 14.583629] platform 5800d000.usb: deferred probe pending

I change SD card I change some settings in device tree of kernel vqmmc-supply but I don't undestand in UBOOT I can explore my sd card 

Hit any key to stop autoboot: 0
STM32MP> mmc list
STM32 SD/MMC: 0 (SD)
STM32MP> mmc dev 0
switch to partitions #0, OK
mmc0 is current device
STM32MP> part list mmc 0

Partition Map for MMC device 0 -- Partition Type: EFI

Part Start LBA End LBA Name
 Attributes
 Type GUID
 Partition GUID
 1 0x00000022 0x00000221 "fsbl1"
 attrs: 0x0000000000000000
 type: 8da63339-0007-60c0-c436-083ac8230908
 (8da63339-0007-60c0-c436-083ac8230908)
 guid: 9bd69a8b-034d-41cd-a42f-fa0956fdedea
 2 0x00000222 0x00000421 "fsbl2"
 attrs: 0x0000000000000000
 type: 8da63339-0007-60c0-c436-083ac8230908
 (8da63339-0007-60c0-c436-083ac8230908)
 guid: 63d55a44-39fc-4810-9f85-5e4b286705f4
 3 0x00000422 0x00000621 "metadata1"
 attrs: 0x0000000000000000
 type: 8a7a84a0-8387-40f6-ab41-a8b9a5a60d23
 (8a7a84a0-8387-40f6-ab41-a8b9a5a60d23)
 guid: c32752c0-5952-480c-a189-44523d881c36
 4 0x00000622 0x00000821 "metadata2"
 attrs: 0x0000000000000000
 type: 8a7a84a0-8387-40f6-ab41-a8b9a5a60d23
 (8a7a84a0-8387-40f6-ab41-a8b9a5a60d23)
 guid: 46718867-6ba7-482c-9a52-6aeed98c9102
 5 0x00000822 0x00002821 "fip-a"
 attrs: 0x0000000000000000
 type: 19d5df83-11b0-457b-be2c-7559c13142a5
 (19d5df83-11b0-457b-be2c-7559c13142a5)
 guid: 4fd84c93-54ef-463f-a7ef-ae25ff887087
 6 0x00002822 0x00004821 "fip-b"
 attrs: 0x0000000000000000
 type: 19d5df83-11b0-457b-be2c-7559c13142a5
 (19d5df83-11b0-457b-be2c-7559c13142a5)
 guid: 09c54952-d5bf-45af-acee-335303766fb3
 7 0x00004822 0x00004c21 "u-boot-env"
 attrs: 0x0000000000000000
 type: 3de21764-95bd-54bd-a5c3-4abe786f38a8
 (u-boot-env)
 guid: e8a675a8-6afa-45b1-b971-a440d27439e4
 8 0x00004c22 0x00024c21 "bootfs"
 attrs: 0x0000000000000004
 type: 0fc63daf-8483-4772-8e79-3d69d8477de4
 (linux)
 guid: 7da5b0a6-8797-4573-9702-94939bb1f755
 9 0x00024c22 0x000c7fde "rootfs"
 attrs: 0x0000000000000000
 type: 0fc63daf-8483-4772-8e79-3d69d8477de4
 (linux)
 guid: e91c4e10-16e6-4c0e-bd0e-77becf4a3582

 Do you have any idea to help me ?

STM32MP> ext4ls mmc 0:9 /
<DIR> 1024 .
<DIR> 1024 ..
<DIR> 12288 lost+found
<SYM> 7 bin
<DIR> 1024 boot
<DIR> 1024 dev
<DIR> 2048 etc
<DIR> 1024 home
<SYM> 7 lib
<DIR> 1024 media
<DIR> 1024 mnt
<DIR> 1024 proc
<DIR> 1024 run
<SYM> 8 sbin
<DIR> 1024 srv
<DIR> 1024 sys
<DIR> 1024 tmp
<DIR> 1024 usr
<DIR> 1024 var
STM32MP> ext4ls mmc 0:9 /dev
<DIR> 1024 .
<DIR> 1024 ..
STM32MP>

Thank your so much.

 

 

Best answer by JMD

Hello,

I fixed the issue by correctly configuring the secure peripherals (mainly I2C4).

The clocks were unavailable, and most peripherals would not start. This was not an eMMC issue.

Starting systemd-udevd version 255.17^
root '/dev/disk/by-partuuid/e91c4e10-16e6-4c0e-bd0e-77becf4a3582' doesn't exist or does not contain a /dev.

[ 14.557600] platform 5a006000.usbphyc: deferred probe pending
[ 14.561992] platform 5800c000.usb: deferred probe pending
[ 14.567427] platform 50001000.pwr: deferred probe pending
[ 14.572778] platform 49000000.usb-otg: deferred probe pending
[ 14.578559] amba 58005000.mmc: deferred probe pending
[ 14.583629] platform 5800d000.usb: deferred probe pending

 

4 replies

Eldam
Senior
January 14, 2026

Hello

Ive got these message.

you should check a file "extlinux.conf"in /boot or (boot.scr.cmd file)

this file contain : APPEND root=/dev/mmcblk2p6 rootwait rw console=ttySTM0,115200 (example)

if u have a custom board, with someting else on mmc0/1/2 interface (like wifi module), the mmcXX number will shift, and this line reflects no more the target sdcard. you should modify it in order to boot on the parition containning the rootfs.

 

You should post entire boot log, and explain what you have on mmc interface (sd card/emmc/wifi)

Ive done this a long time ago, maybe no more in use.

good luck

 

JMD
JMDAuthor
Associate II
January 14, 2026

Hello Eldam,

 

Thank  you for your answer.

I have SDcard on SDMMC1, eMMC on SDMMC2 and WIFI/BLE on SDMMC3. 

Uboot detect my SDcard on MMC0 

extlinux.conf in /boot contain UID

JMD_1-1768393301993.png

Thank you.
Best regards

Eldam
Senior
January 14, 2026

OK,

the partuuid should corresond to the uuid find in your uboot.

Uuid is a bit unreadable for us, human-trying-to-understand-linux-boot, and mmcblk speaks to me.

root=/dev/mmcblk0p10 rootwait rw console=ttySTM0,115200

root=/dev/mmcblk1p10 rootwait rw console=ttySTM0,115200

The 0/1 in bold reflects the mmc id. 10 the partition id (my rootfs)

Regarding your boot cmd log, the uuid :xxx3582 should be something like mmcblk0p9 or 1p9, worth a try.

My boot log:

append: root=/dev/mmcblk0p10 rootwait rw console=ttySTM0,115200


[ 2.649738] mmc0: new high speed SDHC card at address 0007
[ 2.655299] mmcblk0: mmc0:0007 SD16G 14.4 GiB

[ 2.656707] mmc1: new high speed MMC card at address 0001
[ 2.665357] mmcblk1: mmc1:0001 004GA1 3.69 GiB
[ 2.673426] mmcblk1boot0: mmc1:0001 004GA1 2.00 MiB
[ 2.680055] mmcblk1boot1: mmc1:0001 004GA1 2.00 MiB
[ 2.685832] mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11
[ 2.686840] mmcblk1rpmb: mmc1:0001 004GA1 512 KiB, chardev (244:0)

 

SDMMC1, eMMC on SDMMC2 and WIFI/BLE on SDMMC3--> same as me.

good luck

JMD
JMDAuthorBest answer
Associate II
January 25, 2026

Hello,

I fixed the issue by correctly configuring the secure peripherals (mainly I2C4).

The clocks were unavailable, and most peripherals would not start. This was not an eMMC issue.

Starting systemd-udevd version 255.17^
root '/dev/disk/by-partuuid/e91c4e10-16e6-4c0e-bd0e-77becf4a3582' doesn't exist or does not contain a /dev.

[ 14.557600] platform 5a006000.usbphyc: deferred probe pending
[ 14.561992] platform 5800c000.usb: deferred probe pending
[ 14.567427] platform 50001000.pwr: deferred probe pending
[ 14.572778] platform 49000000.usb-otg: deferred probe pending
[ 14.578559] amba 58005000.mmc: deferred probe pending
[ 14.583629] platform 5800d000.usb: deferred probe pending

 

Eldam
Senior
January 26, 2026

Hi,

Glad you overcome these (first) issue!

As a summary, you modified dts file(s) containing clock definition for I2C4 and so on (hse,lse,lsi)? or I2C4 pmic voltage attribution? These clock definition weren't created by cubemx ?

good luck for the next issue!

 

JMD
JMDAuthor
Associate II
January 26, 2026

Hi,

Thank you, the main issue was _NSEC missing for I2C4

&pinctrl_z {
	/* USER CODE BEGIN pinctrl_z */
	i2c4_pins_z_mx: i2c4_mx-0 {
		pins {
			pinmux = <STM32_PINMUX_NSEC('Z', 4, AF6)>, /* I2C4_SCL */
					 <STM32_PINMUX_NSEC('Z', 5, AF6)>; /* I2C4_SDA */
			bias-disable;
			drive-open-drain;
			slew-rate = <0>;
		};
	};
	/* USER CODE END pinctrl_z */
};

In boot log, I have so many warning (one for each peripheral) about Z4 and Z5 pin (I2C4) and it's for this reason that some peripherals are defered

I/TC: WARNING: apply pinctrl for secure pin Z4 that is non-secure
I/TC: WARNING: apply pinctrl for secure pin Z5 that is non-secure

 Best regards