I installed debian squeeze with the help of the installer 1, with the instruction from this post-->
http://plugcomputer.org/plugforum/index.php?topic=878.0After that I followed the instructions from plugwiki -->
http://www.openplug.org/plugwiki/index.php/Install_Prebuilt_Kernels_From_sheeva.with-linux.com and installed kernel 2.6.32.6 with the help of your provided readme-2.6.32.6 only.
Now I can boot from nand with out problems so far.
The next step was to make the plug boot from mmc(sd card).
I followed the instruction from this post-->
http://plugcomputer.org/plugforum/index.php?topic=1001.msg6173#msg6173 to multi boot.
in a few words I did the following:
Procedure for partitioning and formatting MMC:
>fdisk /dev/mmcblk0
press "o" / create a new partition table
press "n" / create a new partition
press "p" / it's a primary partition
press "1" / partition #1
press enter / default first cylinder
press enter / default last cylinder
press "a" / set the boot flag
press "1" / ... for partition #1
press "w" / save changes
>mkfs -t ext2 (or ext3, if you wish) /dev/mmcblk0p1
>mkdir /mnt/sdcard
>mount /dev/mmcblk0p1 /mnt/sdcard
>df
Copy NAND to card (quick and dirty - works better when not copying from active filesystem):
>cp -ax / /mnt/sdcard # takes 13 minutes
>cp -a /dev /mnt/sdcard
I typed some bootargs for nand, sd(mmc) and usb and with the next parameters Tried to mutiboot :
setenv bootcmd 'run bootcmd_usb1; run bootcmd_sd; run bootcmd_nand'FYI the same procedure to multiboot has worked for me the past few months that I have the plug with Ubuntu 9.04 and the new installer 1 kernel.
Now when I have the sdcard pluged-in it tries to read from sdcard but returns me a bad magic number and based on the above multiboot parameters it falls back to the nand and boots from it.
After taking different steps, I can't make it boot from sd.From nand boot, the fdisk for /dev/mmcblk0 (sdcard) gives me :
Disk /dev/mmcblk0: 8048 MB, 8048869376 bytes
4 heads, 16 sectors/track, 245632 cylinders
Units = cylinders of 64 * 512 = 32768 bytes
Disk identifier: 0xd2dcad3a
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 * 1 245632 7860216 83 LinuxBelow is the boot error from Marvel prompt.
(Re)start USB...
USB: scanning bus for devices... 1 USB Device(s) found
scanning bus for storage devices... 0 Storage Device(s) found
** Bad partition 1 **
** Bad partition 1 **
## Booting image at 00200000 ...
Bad Magic Number
SDHC found. Card desciption is:
Manufacturer: 0x27, OEM "PH"
Product name: "SD08G", revision 2.0
Serial number: 2953843753
Manufacturing date: 8/2009
CRC: 0x00, b0 = 0
** Unable to read "/boot/uImage" from mmc 0:1 **
## Booting image at 00800000 ...
Bad Magic Number
NAND read: device 0 offset 0x100000, size 0x400000
Reading data from 0x4ff800 -- 100% complete.
4194304 bytes read: OK
## Booting image at 00800000 ...
Image Name: Linux-2.6.32.6
Created: 2010-01-25 20:14:12 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2821924 Bytes = 2.7 MB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Linux version 2.6.32.6 (kelly@speedy) (gcc version 4.4.1 (Sourcery G++ Lite er) ) #1 PREEMPT Mon Jan 25 13:14:06 MST 2010
CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
CPU: VIVT data cache, VIVT instruction cache
Machine: Marvell SheevaPlug Reference Board
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
Kernel command line: console=ttyS0,115200 rw mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs
...
As you can see it tries to boot first from usb and gives an error (i don't care for now cause usb is empty), second it tries to boot from sd card and also gives me an error.
I'm not an expert but as I can see the problem with sd card"Unable to read "/boot/uImage" from mmc 0:1"
So I don't know if the problem is the 2.6.32.6 kernel or some misconfigured bootargs from uboot..
My printenv are below:
Marvell>> printenv
baudrate=115200
loads_echo=0
ipaddr=10.4.50.165
serverip=10.4.50.5
rootpath=/mnt/ARM_FS/
netmask=255.255.255.0
console=a0000
e=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)$(bootarg
s_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
bootargs_root=ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs
mtdpartitions=mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs)
ethaddr=00:50:43:01:6A:6A
real_bootcmd=setenv bootargs $(bootargs_console) $(mtdpartitions) $(bootargs_root); nand read.e 0x00800000 0x00100000 0x00400
000; bootm 0x00800000
bootargs_console=console=ttyS0,115200
recover1=setenv mainlineLinux yes; setenv arcNumber 2097; setenv bootcmd run recover2; saveenv; reset
recover2=run recover3; setenv bootcmd $(real_bootcmd); saveenv; setenv bootargs $(bootargs_console) $(mtdpartitions) root=/de
v/ram0 rw ramdisk=0x01100000,8M install_type=nand; bootm 0x00800000 0x01100000
recover3=run recover4; nand erase clean 0x00100000 0x00400000; nand write.e 0x00800000 0x00100000 0x00400000
recover4=usb start; fatload usb 0 0x00800000 uImage; fatload usb 0 0x01100000 initrd
arcNumber=2097
filesize=32D62A
bootargs_sd=console=ttyS0,115200 rw root=/dev/mmcblk0p1 rootdelay=5
bootcmd_sd=setenv bootargs $(bootargs_sd); mmcinit; ext2load mmc 0 0x800000 /boot/uImage; bootm 0x800000
bootargs_nand=console=ttyS0,115200 rw mtdparts=orion_nand:0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs) ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs
bootcmd_nand=setenv bootargs $(bootargs_nand); nand read.e 0x800000 0x100000 0x400000; bootm 0x800000
bootargs_usb=console=ttyS0,115200 root=/dev/sda1 ro rootdelay=10 panic=10
bootcmd_usb=usb start; ext2load usb 0:1 0x00200000 /boot/uImage; ext2load usb 0:1 0x01100000 /boot/uInitrd
bootcmd_usb1=setenv bootargs $(bootargs_usb); run bootcmd_usb; bootm 0x00200000 0x01100000
bootcmd=run bootcmd_usb1; run bootcmd_sd; run bootcmd_nand
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
bootdelay=3
disaMvPnp=no
enaAutoRecovery=yes
pcieTune=no
Environment size: 2684/131068 bytes
Marvell>>