Archive: This post was originally written in English and is part of my archive. Please note that some information may no longer be up-to-date.

Sheevaplug boot from SD card fails on power up

December 28, 2010 min read Archived

After installing Debian on SD card, it was booting successfully with the ‘run bootcmd’. But when I switched off the power and plugged in again, I was getting the following error messages:

Error! cmd : 8, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
Error! cmd : 1, err : 0201
No MMC card found
Bad partition 1
Bad partition 1
## Booting image at 00800000 ...
Bad Magic Number
Marvell>>

I found on cyrius.com that I had to give the mmcinit command twice. These are the original setenv commands:

Marvell>> setenv bootargs_console console=ttyS0,115200
Marvell>> setenv bootcmd_mmc 'mmcinit; ext2load mmc 0:1 0x00800000 /uImage; ext2load mmc 0:1 0x01100000 /uInitrd'
Marvell>> setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_mmc; bootm 0x00800000 0x01100000'
Marvell>> saveenv
Marvell>> run bootcmd

To fix the problem, just enter the following setenv commands with the extra (bold) ‘mmcinit;’ :

Marvell>> setenv bootargs_console console=ttyS0,115200
Marvell>> setenv bootcmd_mmc 'mmcinit; mmcinit; ext2load mmc 0:1 0x00800000 /uImage; ext2load mmc 0:1 0x01100000 /uInitrd'
Marvell>> setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_mmc; bootm 0x00800000 0x01100000'
Marvell>> saveenv
Marvell>> run bootcmd

After Debian is booted, halt the system and switch off the power. Now switch on the power and you will see that Debian is booted!