Skip to main content
PPiwk.1
Associate II
April 22, 2024
Solved

STM32MP151C [linux-stm32mp] errors during writing on MMC

  • April 22, 2024
  • 2 replies
  • 1291 views

Hi,

We have a custom board based on the STM32MP151C CPU and we found that after migration to stm32mpu-ecosystem-v4 (linux-stm32mp 5.15) provided by the meta-st-stm32mp yocto layer (langdale) there are some errors during MMC writing procedure:

[ 3358.815661] blk_update_request: I/O error, dev mmcblk0, sector 1199146 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
[ 3358.815720] EXT4-fs warning (device mmcblk0p12): ext4_end_bio:342: I/O error 10 writing to inode 229382 starting block 599574)
[ 3358.815754] Buffer I/O error on device mmcblk0p12, logical block 15893

We observe the same behavior on all of our boards, so we have eliminated MMC corruption. The fsck.ext4 doesn't help and the errors still occur.

In the previous ecosystem based on linux-stm32mp 5.10 everything was fine and we've never noticed any problems with MMC.

Have you faced such an error and know any solution for it? How should we proceed with it?

Thank you in advance

 

Best answer by PPiwk.1

Hi, 

Together with ST Support Team, we found the issue is caused by the wrong definition of the reserved memory region for OPTEE in u-boot/linux dts. In my case it should be:

optee@c6000000{
 reg = <0xc6000000 0x02000000>;
 no-map;
};

 

2 replies

Billy OWEN
ST Employee
April 24, 2024

Hi @PPiwk.1 

 

This post has been escalated to the ST Online Support Team for additional assistance.  We'll contact you directly.

 

Regards,

Billy

PPiwk.1
PPiwk.1AuthorBest answer
Associate II
June 18, 2024

Hi, 

Together with ST Support Team, we found the issue is caused by the wrong definition of the reserved memory region for OPTEE in u-boot/linux dts. In my case it should be:

optee@c6000000{
 reg = <0xc6000000 0x02000000>;
 no-map;
};