I'm trying to get NFS boot working with my SheevaPlug, and I keep getting a "Bad Magic Number" error after it loads the kernel from my TFTP server:
Using egiga0 device
TFTP from server 192.168.1.139; our IP address is 192.168.1.119
Filename 'uImage.sheeva.040309'.
Load address: 0x200000
Loading: *##################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
###############
done
Bytes transferred = 2070316 (1f972c hex)
## Booting image at 02000000 ...
Bad Magic Number
I am just using the pre-compiled uImage.sheeva.040309 kernel provided on the website, and I believe my NFS share of the root filesystem is setup correctly because if I boot the SheevaPlug from the internal flash, I can mount it and read the files. I think there must be something wrong with my uBoot parameters, but I can't make sense of all the hex values and why everyone seems to have different numbers. Here is my uBoot environment.
baudrate=115200
loads_echo=0
CASset=min
MALLOC_len=1
ethprime=egiga0
standalone=fsload 0x2000000 $(image_name);setenv bootargs $(console) root=/dev/mtdblock0 rw ip=$(ipaddr):$(serverip)$(bootargs_end) $(mvPhoneConfig); bootm 0x2000000;
ethaddr=00:50:43:7d:2d:1f
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
run_diag=no
rootpath=/root/rootfsv1.0
image_name=uImage.sheeva.040309
console=console=ttyS0,115200 mtdparts=nand_mtd:0x200000@0x100000(uImage)ro,0x1f800000@0x30000(rootfs)rw
bootargs_root=root=/dev/nfs rw
bootargs_end=:::DB88FXX81:eth0:none
bootcmd=tftpboot 0x200000 $(image_name);setenv bootargs $(console) $(bootargs_root) nfsroot=$(serverip):$(rootpath) ip=$(ipaddr):$(serverip)$(bootargs_end); bootm 0x2000000
stdin=serial
stdout=serial
stderr=serial
mainlineLinux=no
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
filesize=1f972c
fileaddr=200000
netmask=255.255.255.0
ipaddr=192.168.1.119
serverip=192.168.1.139
bootargs=console=ttyS0,115200 mtdparts=nand_mtd:0x200000@0x100000(uImage)ro,0x1f800000@0x30000(rootfs)rw root=/dev/nfs rw nfsroot=192.168.1.139:/root/rootfsv1.0 ip=192.168.1.119:192.168.1.139:::DB88FXX81:eth0:none
I would appreciate any insight anyone can offer, as I would really like to get NFS boot going before messing around with the filesystem. Thanks.