samweber: I run into almost the same situation as yours. Now my plug boots from SD, but -and this will sound stupid- I don't know exactly how I made it. I will do further investigation, but let me advise you something you can try. First, here is what happened:
1. With uboot 24 I could not boot from SD.
2. I tried to downgrade to 23, then the plug died after uncompressing the kernel.
(see
http://plugcomputer.org/plugforum/index.php?topic=968.0)
3. I loaded the very old uboot from CD/USB_Recovery up.
4. Plug died after uncompressing.
5. I loaded the very old uimage from CD/USB_Recovery up with resetting every env (maybe I reloaded the uboot also, with a 'yes') and set the following envs:
setenv ipaddr 10.10.0.1
setenv serverip 10.10.0.2
setenv netmask 255.255.0.0
setenv cesvcid ULULULULULULPPULULULULULDA
setenv bootargs_root 'root=/dev/mtdblock2 ro'
setenv console 'console=ttyS0,115200'
setenv ethaddr 'xx:xx:xx:xx:xx:xx'
setenv run_diag no
setenv bootargs 'console=ttyS0,115200 mtdparts=nand_mtd:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) rw root=/dev/mtdblock1 rw ip=10.4.50.4:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none'
setenv bootcmd 'nand read.e 0x800000 0x100000 0x400000; bootm 0x800000'
NOTE that to use your actual MAC at ethaddr.
6. Here was the point when my plug booted normally again.
7. Then I upgraded to uboot 23 (with a 'no'). I used the image vioan uploaded on the other forum above (thanks).
8. It worked.
And here is the mysterious part, because I don't know what I had done (eg. tried to load the kernel 31.6 from sheeva.with-linux.com) but my plug failed to read the old recovery kernel from NAND. It said there was a big ERROR and it did not even do the uncompression... I had flashed the NAND again, then it uncompressed the kernel but died after. And as far as I remember I did not do a reloading of uboot (with 'yes'), but only made setting on env, but you can try to reload uboot, if the followings won't work.
9. I tried to boot the very new kernel and it worked, then I tried the recovery one, and it died. Then I tried the new kernel with a factory new plug that loaded the factory kernel properly and it died.
Why this last dying happened, I don't know, but I think this one is most mysterious part of the whole thing. Anyway...
10. OK then, I tried to set envs in a nice format, and BOOM it died after loading the new kernel! So I think the uboot-uimage-env trio is extremely sensitive constellation, because I only set bootargs_console, bootargs_root, etc... Then I erased all of the bootargs_xxx=... stuff and used the good old bootargs=..., and voila, it worked again.
So the sum of this all is: I have the latest 2.6.31.6 uimage from
http://sheeva.with-linux.com/sheeva/ , I have uboot 3.4.23 from
http://plugcomputer.org/plugforum/index.php?action=dlattach;topic=968.0;attach=158 , and the output of printenv is the following:
Marvell>> printenv
baudrate=115200
loads_echo=0
rootpath=/mnt/ARM_FS/
netmask=255.255.255.0
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;
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
cesvcid=ULULULULULULPPULULULULULDA
ethaddr=xx:xx:xx:xx:xx:xx
run_diag=no
ipaddr=192.168.1.11
console=console=ttyS0,115200 mtdparts=nand_mtd:0x100000@0(uboot)ro,0x0@0x100000(uImage),0x1ff00000@0x100000(rootfs)rw
serverip=192.168.1.102
filesize=1F972C
arcNumber=2097
bootcmd_mmc=mmcinit; ext2load mmc 0:1 0x0800000 /boot/uImage
bootcmd=run bootcmd_mmc; bootm 0x0800000
bootargs=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip=10.4.50.4:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
stdin=serial
stdout=serial
stderr=serial
nandEnvBase=a0000
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
bootargs_root=root=/dev/nfs rw
bootdelay=3
disaMvPnp=no
enaAutoRecovery=yes
pcieTune=no
NOTE: ethaddr...
Now it boots the new kernel from the SD card, but does NOT boot the old recovery kernel (CD/USB_Recovery) from NAND or USB or SD.......
Hope this helps.