Hi Stefan, On Wed, May 4, 2016 at 10:20 AM, Stefan Christ <s.christ@xxxxxxxxx> wrote: > First of all the reset values of MMC interfaces are differently between > Quad and DualLite/Solo SoM. > > Register VEND_SPEC2(0xC8) > Quad: 0x0 > DualLite: 0x00000006 > default: 0x00000006 (from i.MX6 Reference Manual) > > Furthermore the ROM Code of Quad and DualLite uses the MMC interfaces > differently when it loads the bootloader from that device: > > Register DLL_CTRL(0x60) Bit 25 FBCLK_SEL (0x48) > Quad: 0x0 0 > DualLite: 0x01000021 1 > > Since the linux kernel and barebox driver doesn't reset all registers, > the MMC interface is in an inconsistent state, which leads to boot > failures for some eMMC devices on the i.MX6 DualLite SoM. The errors > look like: > > mmcblk3: error -110 sending stop command, original cmd response 0x900, card status 0x400900 > mmcblk3: error -84 transferring data, sector 24578, nr 2, cmd response 0x900, card status 0x0 > mmcblk3: retrying using single block read > mmcblk3: error -84 transferring data, sector 24578, nr 2, cmd response 0x900, card status 0x0 > blk_update_request: I/O error, dev mmcblk3, sector 24578 > > It's sufficient to reset register DLL_CTRL and bit FBCLK_SEL. Register > VEND_SPEC2 has no effect. > > Signed-off-by: Stefan Christ <s.christ@xxxxxxxxx> Do you plan to fix this in the kernel driver as well? Thanks _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox