stm32mp157c eMMC DDR50 mode

Yann Gautier yann.gautier at foss.st.com
Fri Dec 2 08:37:04 PST 2022


On 12/2/22 08:27, Sean Nyekjaer wrote:
> Hi,
> 
> We are testing using the Octavo RED board with OSD32MP157c SoC 
> (stm32mp157c).
> 
> We are using vanilla u-boot 2022.10(in basic mode without TF-A) and 
> Linux kernel version 6.0.x.
> I have ported the devicetree's from Octavo combined with upstream 
> stm32mp1 boards.
> But we are facing issues with running the eMMC in DDR50 mode, works fine 
> in normal 50Mhz mode (without the mmc-ddr-3_3v in dts).
> 
> It works fine though, with the ST u-boot and ST Linux kernel.
> 
> One further note is it seems to work fine, when mounting a squashfs (aka 
> readonly) in DDR50.
> 
> But ext4 fails with:
> root at osd32mp1-red:~# mount /dev/mmcblk0p7 /media/
> I/O error, dev mmcblk0, sector 1060144 op 0x1:(WRITE) flags 0x800 
> phys_seg 1 prio class 2
> Buffer I/O error on dev mmcblk0p7, logical block 422, lost async page write
> I/O error, dev mmcblk0, sector 1060016 op 0x1:(WRITE) flags 0x800 
> phys_seg 1 prio class 2
> Buffer I/O error on dev mmcblk0p7, logical block 406, lost async page write
> I/O error, dev mmcblk0, sector 1056768 op 0x1:(WRITE) flags 0x800 
> phys_seg 2 prio class 2
> Buffer I/O error on dev mmcblk0p7, logical block 0, lost async page write
> Buffer I/O error on dev mmcblk0p7, logical block 1, lost async page write
> 
> /Sean

Hi Sean,

I've seen from the Octavo website, that the DT was available here:
https://github.com/octavosystems/OSD32MP1-RED-Device-tree

I've added Neeraj Dantu who made this DT, maybe he has more info.
 From github, it seems the DT was made for kernel 5.10.
And it has the mmc-ddr-3_3v property.
Was DDR52 mode properly working on the eMMC with this kernel version?

If yes, then could you bisect the issue and try to find the patch that 
caused the regression?

Maybe you could also enable dynamic traces on mmc.
That could help tracking the issue.


Best regards,
Yann





More information about the linux-arm-kernel mailing list