Well, I have had a frustrating week trying various ways to get the SheevaPlug to boot Debian. Without success :-(
I have tried Martin Michlmayr's HOWTO here
http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html but both Lenny and Squeeze installs fail for various reasons. One reason for Squeeze was dodgy installer images as documented here:
http://lists.debian.org/debian-arm/2010/09/msg00041.htmlI have tried two seperate SD cards, one Toshiba 4GB and another Integral 8GB. I updated the U-Boot image to version 3.4.27 from 3.4.23
Marvell>> version
U-Boot 1.1.4 (Dec 27 2009 - 22:03:21) Marvell version: 3.4.27 - pingtoo patch.01
I tried instead to use the pre-prepared Lenny tarball method here:
http://www.cyrius.com/debian/kirkwood/sheevaplug/unpack.htmlMy SD card partition layout is slightly modified from the HOWTO:
/dev/mmcblk0p1 /boot type ext2
/dev/mmcblk0p3 / type ext2
/dev/mmcblk0p4 /var ext2
The error I always get is:
__ __ _ _
| \/ | __ _ _ ____ _____| | |
| |\/| |/ _` | '__\ \ / / _ \ | |
| | | | (_| | | \ V / __/ | |
|_| |_|\__,_|_| \_/ \___|_|_|
_ _ ____ _
| | | | | __ ) ___ ___ | |_
| | | |___| _ \ / _ \ / _ \| __|
| |_| |___| |_) | (_) | (_) | |_
\___/ |____/ \___/ \___/ \__|
** MARVELL BOARD: SHEEVA PLUG LE
U-Boot 1.1.4 (Dec 27 2009 - 22:03:21) Marvell version: 3.4.27
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CFEE0
Soc: 88F6281 A0 (DDR2)
CPU running @ 1200Mhz L2 running @ 400Mhz
SysClock = 400Mhz , TClock = 200Mhz
DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6
DRAM CS[0] base 0x00000000 size 256MB
DRAM CS[1] base 0x10000000 size 256MB
DRAM Total size 512MB 16bit width
Addresses 8M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (8M - 7M): Done
NAND:512 MB
Flash: 0 kB
CPU : Marvell Feroceon (Rev 1)
Streaming disabled
Write allocate disabled
USB 0: host mode
PEX 0: interface detected no Link.
Net: egiga0 [PRIME]
Hit any key to stop autoboot: 0
SDHC found. Card desciption is:
Manufacturer: 0x27, OEM "PH"
Product name: "SD08G", revision 2.0
Serial number: 271100857
Manufacturing date: 7/2010
CRC: 0x00, b0 = 0
** Invalid partition type "" (expect "U-Boot")
** Invalid partition type "" (expect "U-Boot")
## Booting image at 00800000 ...
Bad Magic Number
I have a feeling it might be something in my U-Boot env (MAC obscured):
baudrate=115200
loads_echo=0
ipaddr=10.4.50.165
serverip=10.4.50.5
rootpath=/mnt/ARM_FS/
netmask=255.255.255.0
run_diag=yes
console=console=ttyS0,115200 mtdparts=nand_mtd:0xc0000@0(uboot)ro,0x1ff00000@0x100000(root)
CASset=min
MALLOC_len=1
ethprime=egiga0
bootargs_end=:::DB88FXX81:eth0:none
image_name=uImage
standalone=fsload 0x2000000 $(image_name);setenv bootargs $(console) root=/dev/mtdblock0 rw ip=$(ipaddr):$(serverip)$(bootargs_end) $(mvPhoneConfig); bootm 0x2000000;
ethaddr=00:50:43:xx:xx:xx
ethmtu=1500
mvPhoneConfig=mv_phone_config=dev0:fxs,dev1:fxs
mvNetConfig=mv_net_config=(00:11:88:0f:62:81,0:1:2:3),mtu=1500
usb0Mode=host
yuk_ethaddr=00:00:00:EE:51:81
nandEcc=1bit
netretry=no
rcvrip=169.254.100.100
loadaddr=0x02000000
autoload=no
ethact=egiga0
bootargs_console=console=ttyS0,115200
bootargs_root=root=/dev/mmcblk0p3
bootcmd_mmc=mmcinit; ext2load mmc 0:1 0x01100000 /uInitrd; ext2load mmc 0:1 0x00800000 /uImage
bootcmd=setenv bootargs $(bootargs_console) $(bootargs_root); run bootcmd_mmc; bootm 0x00800000 0x01100000
arcNumber=2097
stdin=serial
stdout=serial
stderr=serial
mainlineLinux=yes
enaMonExt=no
enaCpuStream=no
enaWrAllo=no
pexMode=RC
disL2Cache=no
setL2CacheWT=yes
disL2Prefetch=yes
enaICPref=yes
enaDCPref=yes
sata_dma_mode=yes
netbsd_en=no
vxworks_en=no
bootdelay=3
disaMvPnp=no
enaAutoRecovery=yes
pcieTune=no
bootargs=console=ttyS0,115200 root=/dev/mmcblk0p3
Any ideas?
I'm tearing my hair out here. My next step was going to try a TFTP boot. My google-fu is weak and I keep running into dead-ends.
BTW, ext2ls does not seem to work. Does this point to an issue with my SD card?
Marvell>> ext2ls mmc 0:1 /
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - mmc 0:1 **
Another oddity I noticed with the SDcard is a couple of "unusable" areas reported by cfdisk:
Unusable 1.05
mmcblk1p1 Boot Primary Linux ext2 199.23
mmcblk1p2 Primary Linux swap / Solaris 511.71
mmcblk1p3 Primary Linux ext2 4300.22
mmcblk1p4 Primary Linux ext2 2972.72
Unusable 1.05
Just tried an experiment with fatload on a different SD card:
Marvell>> fatls mmc 0:1
85107 config-2.6.32-5-kirkwood
5217825 initrd.img
5217825 initrd.img-2.6.32-5-kirkwood
1009318 system.map-2.6.32-5-kirkwood
1444216 uimage
5217889 uinitrd
1444152 vmlinuz
1444152 vmlinuz-2.6.32-5-kirkwood
and change ext2load to fatload...
Marvell>> setenv bootcmd_mmc 'mmcinit; fatload mmc 0:1 0x01100000 /uInitrd; fatload mmc 0:1 0x00800000 /uImage'
...it boots! So my conclusion is that there is either a problem with the ext2load routine in UBoot or something about my ext2 partitions?
Marvell>> run bootcmd
SDHC found. Card desciption is:
Manufacturer: 0x02, OEM "TM"
Product name: "SD04G", revision 6.1
Serial number: 2967450160
Manufacturing date: 5/2010
CRC: 0x00, b0 = 0
reading /uInitrd
5217889 bytes read
reading /uImage
1444216 bytes read
## Booting image at 00800000 ...
Image Name: Debian kernel
Created: 2010-06-13 12:32:01 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1444152 Bytes = 1.4 MB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
OK
## Loading Ramdisk Image at 01100000 ...
Image Name: Debian ramdisk
Created: 2010-06-13 12:32:02 UTC
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 5217825 Bytes = 5 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 2.6.32-5-kirkwood (Debian 2.6.32-13) (maks@debian.org) (gcc version 4.3.4 (Debian 4.3.4-10) ) #1 Fri May 21 05:44:29 UTC 2010