• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: Dual boot NAND and SDCARD  (Read 4646 times)
hideoushog
Newbie
*

Karma: 0
Posts: 23


View Profile
« on: February 21, 2010, 12:42:13 PM »

I am attempting to get my plug to dual boot. NAND boot is fine so it is just SDcard booting that is the issue. Everything works fine booting NAND with kernel 2.6.24.18 after which I can access the SDcard filesystem.

SDcard booting

I have consulted the PlugWiki FAQ and Howto and all the forum entries here. I have updated uboot to the  3.4.27 patch that I found in this forum. This has helped and the SDcard boot does now start. However, it still does not start when using the 2.6.32.8 kernel.

The only difference I can see is that the NAND boots from RAM after a direct copy from NAND into RAM whereas the SDcard boots from a file copied into RAM (uImage). Whether this is a cause of the problem I have no way to know.

I am now at a loss how to proceed. I don't want to do my development work using internal NAND, and wear it out. I note others seem to be wearing out their SD cards, which is a bit worrying.

However, since I do have one of the plugs with a SATA port maybe I should try that?

Code:

         __  __                      _ _
        |  \/  | __ _ _ ____   _____| | |
        | |\/| |/ _` | '__\ \ / / _ \ | |
        | |  | | (_| | |   \ 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
Marvell>> printenv
baudrate=115200
loads_echo=0
rootpath=/mnt/ARM_FS/
netmask=255.255.255.0
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;
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
ethaddr=00:50:43:01:4A:B5
run_diag=no
ipaddr=192.168.14.109
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
bootargs_nand=console=ttyS0,115200 mtdparts=nand_mtd:0x300000@0x100000(uImage),0x1fb00000@0x400000(rootfs) rw root=/dev/mtdblock1 rw ip=192.168.14.100:192.168.14.109:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootcmd_nand=setenv bootargs $(bootargs_nand); nand read.e 0x800000 0x100000 0x300000; bootm 0x800000
mainLineLinux=yes
arcNumber=2097
filesize=1000
Bootargs_sd=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip=192.168.14.109:192.168.14.100:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootargs_mtd=mtdparts=nand_mtd:0x300000@0x100000(uImage), 0x1fb00000@0x400000(rootfs) rw
bootargs_console=console=ttyS0,115200 ro
bootargs_ip=ip= 10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootargs_root=/dev/mmcblk0p1
bootcmd=run bootcmd_sd; run bootcmd_nand
serverip=192.168.14.101
bootcmd_sd=setenv bootargs $(bootargs_sd) $(bootargs_mmc) $(bootargs_ip);mmcinit; ext2load mmc 0 0x800000 /boot/uImage; bootm 0x800000
bootargs_sd=console=ttyS0,115200 noinitrd root=/dev/mmcblk0p1 rw rootdelay=3 rootfstype=ext2
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
pcieTune=no

Environment size: 2256/131068 bytes

Here is the entire boot log.

Code:
Marvell>> boot
SDHC found. Card desciption is:
Manufacturer:       0x03, OEM "SD"
Product name:       "SD08G", revision 8.0
Serial number:      1890933963
Manufacturing date: 8/2009
CRC:                0x00, b0 = 0

2014240 bytes read
## Booting image at 00800000 ...
   Image Name:   Linux-2.6.22.18-6plug
   Created:      2009-03-11  18:32:36 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2014176 Bytes =  1.9 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Linux version 2.6.22.18-6plug (sapere@dellgentoo) (gcc version 4.2.1) #1 Wed Mar 11 11:32:30 PDT 2009
CPU: ARM926EJ-S [56251311] revision 1 (ARMv5TE), cr=00053977
Machine: Feroceon-KW
Using UBoot passing parameters structure
Memory policy: ECC disabled, Data cache writeback
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
Built 1 zonelists.  Total pages: 130048
Kernel command line: console=ttyS0,115200 noinitrd root=/dev/mmcblk0p1 rw rootdelay=3 rootfstype=ext2 ip= 10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Unknown boot option `10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none': ignoring
PID hash table entries: 2048 (order: 11, 8192 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 256MB 256MB 0MB 0MB = 512MB total
Memory: 515584KB available (3696K code, 262K data, 104K init)
Security Framework v1.0.0 initialized
SELinux:  Initializing.
selinux_register_security:  Registering secondary module capability
Capability LSM initialized as secondary
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16

CPU Interface
-------------
SDRAM_CS0 ....base 00000000, size 256MB
SDRAM_CS1 ....base 10000000, size 256MB
SDRAM_CS2 ....disable
SDRAM_CS3 ....disable
PEX0_MEM ....base e8000000, size 128MB
PEX0_IO ....base f2000000, size   1MB
INTER_REGS ....base f1000000, size   1MB
NFLASH_CS ....base fa000000, size   2MB
SPI_CS ....base f4000000, size  16MB
BOOT_ROM_CS ....no such
DEV_BOOTCS ....no such
CRYPT_ENG ....base f0000000, size   2MB

  Marvell Development Board (LSP Version KW_LSP_4.2.7_patch2)-- SHEEVA PLUG  Soc: 88F6281 A0 LE

 Detected Tclk 200000000 and SysClk 400000000
MV Buttons Device Load
Marvell USB EHCI Host controller #0: c0891200
PEX0 interface detected no Link.
PCI: bus0: Fast back to back transfers enabled
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
Time: kw_clocksource clocksource has been installed.
IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
TCP established hash table entries: 65536 (order: 7, 524288 bytes)
TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
RTC registered
Use the XOR engines (acceleration) for enhancing the following functions:
  o RAID 5 Xor calculation
  o kernel memcpy
  o kenrel memzero
Number of XOR engines to use: 4
cesadev_init(c000c8c8)
mvCesaInit: sessions=640, queue=64, pSram=f0000000
Warning: TS unit is powered off.
MV Buttons Driver Load
audit: initializing netlink socket (disabled)
audit(1266780490.989:1): initialized
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler anticipatory registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
serial8250.0: ttyS1 at MMIO 0xf1012100 (irq = 34) is a 16550A
Loading Marvell Ethernet Driver:
  o Cached descriptors in DRAM
  o DRAM SW cache-coherency
  o Single RX Queue support - ETH_DEF_RXQ=0
  o Single TX Queue support - ETH_DEF_TXQ=0
  o TCP segmentation offload enabled
  o Receive checksum offload enabled
  o Transmit checksum offload enabled
  o Network Fast Processing (Routing) supported
  o Driver ERROR statistics enabled
  o Driver INFO statistics enabled
  o Proc tool API enabled
  o Rx descripors: q0=128
  o Tx descripors: q0=532
  o Loading network interface(s):
    o eth0, ifindex = 1, GbE port = 0

Warning: Giga 1 is Powered Off

mvFpRuleDb (dfca0000): 16384 entries, 65536 bytes
Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
Copyright (c) 1999-2006 Intel Corporation.
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k4-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation

Warning Sata is Powered Off
NFTL driver: nftlcore.c $Revision: 1.98 $, nftlmount.c $Revision: 1.41 $
NAND device: Manufacturer ID: 0xec, Chip ID: 0xdc (Samsung NAND 512MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 420 at 0x03480000
Bad eraseblock 421 at 0x034a0000
Bad eraseblock 1445 at 0x0b4a0000
Bad eraseblock 3544 at 0x1bb00000
Bad eraseblock 4046 at 0x1f9c0000
Bad eraseblock 4047 at 0x1f9e0000
Using static partition definition
Creating 3 MTD partitions on "nand_mtd":
0x00000000-0x00100000 : "u-boot"
0x00100000-0x00300000 : "uImage"
0x00300000-0x20000000 : "root"
ehci_marvell ehci_marvell.70059: Marvell Orion EHCI
ehci_marvell ehci_marvell.70059: new USB bus registered, assigned bus number 1
ehci_marvell ehci_marvell.70059: irq 19, io base 0xf1050100
ehci_marvell ehci_marvell.70059: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
USB Universal Host Controller Interface driver v3.0
usbcore: registered new interface driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
Linux telephony interface: v1.00
Marvell Telephony Driver:

Warning Tdm is Powered Off
md: linear personality registered for level -1
md: raid0 personality registered for level 0
md: raid1 personality registered for level 1
raid6: int32x1     98 MB/s
raid6: int32x2    114 MB/s
raid6: int32x4    122 MB/s
raid6: int32x8    110 MB/s
raid6: using algorithm int32x4 (122 MB/s)
md: raid6 personality registered for level 6
md: raid5 personality registered for level 5
md: raid4 personality registered for level 4
raid5: measuring checksumming speed
   arm4regs  :  1084.400 MB/sec
   8regs     :   755.200 MB/sec
   32regs    :   900.000 MB/sec
raid5: using function: arm4regs (1084.400 MB/sec)
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.14 (Thu May 31 09:03:25 2007 UTC).
ALSA device list:
  No soundcards found.
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Waiting 3sec before mounting root device...
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
Root-NFS: No NFS server available, giving up.
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "mmcblk0p1" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00       1024 mtdblock0 (driver?)
1f01       2048 mtdblock1 (driver?)
1f02     521216 mtdblock2 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)




Logged

mundhra
Newbie
*

Karma: 1
Posts: 36


View Profile
« Reply #1 on: February 21, 2010, 06:05:43 PM »

breaking it down:

bootcmd=run bootcmd_sd; run bootcmd_nand

bootcmd_sd=setenv bootargs $(bootargs_sd) $(bootargs_mmc) $(bootargs_ip);mmcinit; ext2load mmc 0 0x800000 /boot/uImage; bootm 0x800000
bootargs_sd=console=ttyS0,115200 noinitrd root=/dev/mmcblk0p1 rw rootdelay=3 rootfstype=ext2
bootargs_mmc is missing
bootargs_ip=ip= 10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none

bootcmd_nand=setenv bootargs $(bootargs_nand); nand read.e 0x800000 0x100000 0x300000; bootm 0x800000
bootargs_nand=console=ttyS0,115200 mtdparts=nand_mtd:0x300000@0x100000(uImage),0x1fb00000@0x400000(rootfs) rw root=/dev/mtdblock1 rw ip=192.168.14.100:192.168.14.109:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none

you also have a Bootargs_sd, which isn't being referenced, but is worth noting. bootargs_mmc is missing, but it usually contains the mmcinit and ext2load statements so that isn't necessarily your problem? then again, i don't think the mmc init is actually working below (i don't have any reference in front of me). maybe add a space between the ';' and 'mmcinit' in your bootcmd_sd.

you state that sd boot works fine with an older kernel, presumably 2.6.24.18?, but does not work with 2.6.32.8. the output you provided is confusing, though:

Linux version 2.6.22.18-6plug (sapere@dellgentoo) (gcc version 4.2.1) #1 Wed Mar 11 11:32:30 PDT 2009

i also see that bootargs_ip looks to be superfluous:

Kernel command line: console=ttyS0,115200 noinitrd root=/dev/mmcblk0p1 rw rootdelay=3 rootfstype=ext2 ip= 10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Unknown boot option `10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none': ignoring

VFS: Cannot open root device "mmcblk0p1" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00       1024 mtdblock0 (driver?)
1f01       2048 mtdblock1 (driver?)
1f02     521216 mtdblock2 (driver?)

what is the layout of your sd card?
Logged

hideoushog
Newbie
*

Karma: 0
Posts: 23


View Profile
« Reply #2 on: February 22, 2010, 05:33:53 AM »

Thankyou for the help so far, much appreciated. I am not sure what you ask for regarding my setup. It is a standard plug from NEWIT, uK with Sata port. I am using a 15MB/sec Sandisk SDHC ultra 8G card. I have not yet connected a sata drive as I don't have one but a USB drive does connect. I am close to getting the plug to boot from that, but I would like to be able to boot from SD card if possible.

I have removed the superfluous environment variables, (It was a bit of a mess, clearer now I hope)  made sure there is a space before mmcinit. So lets go through the log and see what it is doing. First I have done a printenv so we know where we are. I start with

Marvell >> printenv
Marvell >> boot  // This does a "run bootcmd_sd" if the SD card is inserted otherwise bootcmd_nand

We now see that "mmcinit" has worked and the SD card found. Space before mmcinit is not the problem. Next we see that the uImage file is found and the image is loaded into and starts to boot from ddram.

## Booting image at 00800000 ...

All seems fine and showing that Linux 2.6.22.18plug is booting.

Uncompressing Linux...

The point I make about version 2.6.32.8 is that it halts here. It also used to halt here before I installed the patched boot loader. Still that is not the problem I am trying to solve right now.

We get to the end of the log......

VFS: Cannot open root device "mmcblk0p1" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00       1024 mtdblock0 (driver?)
1f01       2048 mtdblock1 (driver?)
1f02     521216 mtdblock2 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)



Code:
Marvell>> printenv   
baudrate=115200
loads_echo=0
rootpath=/mnt/ARM_FS/
netmask=255.255.255.0
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;
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
ethaddr=00:50:43:01:4A:B5
run_diag=no
ipaddr=192.168.14.109
bootargs_nand=console=ttyS0,115200 mtdparts=nand_mtd:0x300000@0x100000(uImage),0x1fb00000@0x400000(rootfs) rw root=/dev/mtdblock1 rw ip=192.168.14.100:192.168.14.109:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootcmd_nand=setenv bootargs $(bootargs_nand); nand read.e 0x800000 0x100000 0x300000; bootm 0x800000
mainLineLinux=yes
arcNumber=2097
filesize=1000
Bootargs_sd=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip=192.168.14.109:192.168.14.100:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootargs_mtd=mtdparts=nand_mtd:0x300000@0x100000(uImage), 0x1fb00000@0x400000(rootfs) rw
bootargs_root=/dev/mmcblk0p1
bootcmd=run bootcmd_sd; run bootcmd_nand
serverip=192.168.14.101
bootcmd_sd=setenv bootargs $(bootargs_sd) $(bootargs_ip); mmcinit ; ext2load mmc 0 0x800000 /boot/uImage; bootm 0x800000
bootargs_ip=ip= 10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
bootargs_sd=console=ttyS0,115200 noinitrd root=/dev/mmcblk0p1 rw rootdelay=3 rootfstype=ext2
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
pcieTune=no

Environment size: 2006/131068 bytes
Marvell>> boot
SDHC found. Card desciption is:
Manufacturer:       0x03, OEM "SD"
Product name:       "SD08G", revision 8.0
Serial number:      1890933963
Manufacturing date: 8/2009
CRC:                0x00, b0 = 0

2014240 bytes read
## Booting image at 00800000 ...
   Image Name:   Linux-2.6.22.18-6plug
   Created:      2009-03-11  18:32:36 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2014176 Bytes =  1.9 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Linux version 2.6.22.18-6plug (sapere@dellgentoo) (gcc version 4.2.1) #1 Wed Mar 11 11:32:30 PDT 2009
CPU: ARM926EJ-S [56251311] revision 1 (ARMv5TE), cr=00053977
Machine: Feroceon-KW
Using UBoot passing parameters structure
Memory policy: ECC disabled, Data cache writeback
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
Built 1 zonelists.  Total pages: 130048
Kernel command line: console=ttyS0,115200 noinitrd root=/dev/mmcblk0p1 rw rootdelay=3 rootfstype=ext2 ip= 10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Unknown boot option `10.4.50.5:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none': ignoring
PID hash table entries: 2048 (order: 11, 8192 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 256MB 256MB 0MB 0MB = 512MB total
Memory: 515584KB available (3696K code, 262K data, 104K init)
Security Framework v1.0.0 initialized
SELinux:  Initializing.
selinux_register_security:  Registering secondary module capability
Capability LSM initialized as secondary
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16

CPU Interface
-------------
SDRAM_CS0 ....base 00000000, size 256MB
SDRAM_CS1 ....base 10000000, size 256MB
SDRAM_CS2 ....disable
SDRAM_CS3 ....disable
PEX0_MEM ....base e8000000, size 128MB
PEX0_IO ....base f2000000, size   1MB
INTER_REGS ....base f1000000, size   1MB
NFLASH_CS ....base fa000000, size   2MB
SPI_CS ....base f4000000, size  16MB
BOOT_ROM_CS ....no such
DEV_BOOTCS ....no such
CRYPT_ENG ....base f0000000, size   2MB

  Marvell Development Board (LSP Version KW_LSP_4.2.7_patch2)-- SHEEVA PLUG  Soc: 88F6281 A0 LE

 Detected Tclk 200000000 and SysClk 400000000
MV Buttons Device Load
Marvell USB EHCI Host controller #0: c0891200
PEX0 interface detected no Link.
PCI: bus0: Fast back to back transfers enabled
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
Time: kw_clocksource clocksource has been installed.
IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
TCP established hash table entries: 65536 (order: 7, 524288 bytes)
TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
RTC registered
Use the XOR engines (acceleration) for enhancing the following functions:
  o RAID 5 Xor calculation
  o kernel memcpy
  o kenrel memzero
Number of XOR engines to use: 4
cesadev_init(c000c8c8)
mvCesaInit: sessions=640, queue=64, pSram=f0000000
Warning: TS unit is powered off.
MV Buttons Driver Load
audit: initializing netlink socket (disabled)
audit(1266840378.989:1): initialized
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler anticipatory registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
serial8250.0: ttyS1 at MMIO 0xf1012100 (irq = 34) is a 16550A
Loading Marvell Ethernet Driver:
  o Cached descriptors in DRAM
  o DRAM SW cache-coherency
  o Single RX Queue support - ETH_DEF_RXQ=0
  o Single TX Queue support - ETH_DEF_TXQ=0
  o TCP segmentation offload enabled
  o Receive checksum offload enabled
  o Transmit checksum offload enabled
  o Network Fast Processing (Routing) supported
  o Driver ERROR statistics enabled
  o Driver INFO statistics enabled
  o Proc tool API enabled
  o Rx descripors: q0=128
  o Tx descripors: q0=532
  o Loading network interface(s):
    o eth0, ifindex = 1, GbE port = 0

Warning: Giga 1 is Powered Off

mvFpRuleDb (dfca0000): 16384 entries, 65536 bytes
Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
Copyright (c) 1999-2006 Intel Corporation.
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k4-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation

Warning Sata is Powered Off
NFTL driver: nftlcore.c $Revision: 1.98 $, nftlmount.c $Revision: 1.41 $
NAND device: Manufacturer ID: 0xec, Chip ID: 0xdc (Samsung NAND 512MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 420 at 0x03480000
Bad eraseblock 421 at 0x034a0000
Bad eraseblock 1445 at 0x0b4a0000
Bad eraseblock 3544 at 0x1bb00000
Bad eraseblock 4046 at 0x1f9c0000
Bad eraseblock 4047 at 0x1f9e0000
Using static partition definition
Creating 3 MTD partitions on "nand_mtd":
0x00000000-0x00100000 : "u-boot"
0x00100000-0x00300000 : "uImage"
0x00300000-0x20000000 : "root"
ehci_marvell ehci_marvell.70059: Marvell Orion EHCI
ehci_marvell ehci_marvell.70059: new USB bus registered, assigned bus number 1
ehci_marvell ehci_marvell.70059: irq 19, io base 0xf1050100
ehci_marvell ehci_marvell.70059: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
USB Universal Host Controller Interface driver v3.0
usb 1-1: new high speed USB device using ehci_marvell and address 2
usb 1-1: configuration #1 chosen from 1 choice
usbcore: registered new interface driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
Linux telephony interface: v1.00
Marvell Telephony Driver:

Warning Tdm is Powered Off
md: linear personality registered for level -1
md: raid0 personality registered for level 0
md: raid1 personality registered for level 1
raid6: int32x1     98 MB/s
raid6: int32x2    114 MB/s
raid6: int32x4    122 MB/s
raid6: int32x8    110 MB/s
raid6: using algorithm int32x4 (122 MB/s)
md: raid6 personality registered for level 6
md: raid5 personality registered for level 5
md: raid4 personality registered for level 4
raid5: measuring checksumming speed
   arm4regs  :  1072.400 MB/sec
   8regs     :   754.800 MB/sec
   32regs    :   891.200 MB/sec
raid5: using function: arm4regs (1072.400 MB/sec)
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.14 (Thu May 31 09:03:25 2007 UTC).
ALSA device list:
  No soundcards found.
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Waiting 3sec before mounting root device...
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
Root-NFS: No NFS server available, giving up.
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "mmcblk0p1" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00       1024 mtdblock0 (driver?)
1f01       2048 mtdblock1 (driver?)
1f02     521216 mtdblock2 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)

Logged

pingtoo
Sr. Member
****

Karma: 15
Posts: 318


View Profile
« Reply #3 on: February 22, 2010, 07:07:44 AM »

@hideoushog,

In your kernel mesage
Quote
raid5: measuring checksumming speed
   arm4regs  :  1072.400 MB/sec
   8regs     :   754.800 MB/sec
   32regs    :   891.200 MB/sec
raid5: using function: arm4regs (1072.400 MB/sec)
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
after the sdhci:... there should be some indication show it detect a SD card was in the card holder. in you case it show nothing so I suggest you use a newer version kernel if possible or change your SD card to non SDHC card. I think this version kernel have problem with SDHC card.

Good Luck Smiley
Logged

Good Luck Smiley

mundhra
Newbie
*

Karma: 1
Posts: 36


View Profile
« Reply #4 on: February 22, 2010, 09:21:05 AM »

as pingtoo stated, the sd card is recognized by uboot but it isn't being seen by the kernel.

i had assumed that you used the sheeva.with-linux.com kernel when you mentioned 2.6.32.8, but i guess i shouldn't assume.

for reference, your should see a section similar to the following for successful kernel sd card init:

Code:
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
mmc0: mvsdio driver initialized, lacking card detect (fall back to polling)
Registered led device: plug:green:health
mv_xor_shared mv_xor_shared.0: Marvell shared XOR driver
mv_xor_shared mv_xor_shared.1: Marvell shared XOR driver
mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
mmc0: host does not support reading read-only switch. assuming write-enable.
mmc0: new high speed SDHC card at address d555
mmcblk0: mmc0:d555 SD04G 3.79 GiB
 mmcblk0: p1 p2 p3 < p5 >

my question regarding sd card layout is in reference to partitioning scheme; your settings indicate a single ext2 partition.
Logged

hideoushog
Newbie
*

Karma: 0
Posts: 23


View Profile
« Reply #5 on: February 22, 2010, 10:52:03 AM »

Thanks for the suggestions. I am starting to understand the log but this is all new to me.

What is interesting is that if I boot from NAND the SDHC card IS detected. It does indeed look like the SDHC card is not detected correctly when I copy uImage from the card into memory and then boot from memory. No idea why that should be. Here is what happens when I boot from NAND ...

Code:
sdhci: Copyright(c) Pierre Ossman
mvsdmmc: irq =28 start f1090000
mvsdmmc: no IRQ detect
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.14 (Thu May 31 09:03:25 2007 UTC).
ALSA device list:
  No soundcards found.
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
mmc0: host does not support reading read-only switch. assuming write-enable.
mmc0: new SDHC card at address d08e
mmcblk0: mmc0:d08e SD08G 7761920KiB
 mmcblk0: p1

I suppose I have 2 options

a) Go out and get an SD card
b) Try to get a bit further with the latest kernel

The trouble with b) is that I get no debug information. The boot process just appears to stop after uncompressing Linux .............................

If you have any other ideas please let me know. Thanks
Logged

mundhra
Newbie
*

Karma: 1
Posts: 36


View Profile
« Reply #6 on: February 22, 2010, 11:49:37 AM »

what are the origins of the kernel in NAND vs the kernel on your SD card?

personally, i would try the following:

- boot from NAND
- insert and mount SD to /mnt/sdcard
- download modules tar, uImage, and their md5s from here.
- follow the readme, performing the commands manually based on the fact that you aren't booting into the environment you're upgrading:
  • verify modules tar against its md5sum
    verify uImage against its md5sum
  • tar x -C /mnt/sdcard/ --overwrite -zf sheeva-2.6.32.8-Modules.tar.gz
  • cp sheeva-2.6.32.8-uImage /mnt/sdcard/boot/
- then on reboot, interrupt uboot and set bootcmd_sd to 'setenv bootargs $(bootargs_sd) $(bootargs_ip); mmcinit ; ext2load mmc 0 0x800000 /boot/sheeva-2.6.32.8-uImage; bootm 0x800000'
- don't bother with a setenv, just boot and see if that works

(i've highlighted the main changes)

please note: i have not done this procedure manually, so proceed with caution.

i suppose another option would be to copy your NAND kernel and modules to the sdcard.
Logged

pingtoo
Sr. Member
****

Karma: 15
Posts: 318


View Profile
« Reply #7 on: February 22, 2010, 11:51:26 AM »

It is hard without actually access your environment to understand the discrepancy between your NAND setup and what is on SD, my guess is you have two different version of kernel.

As when no further output after kernel decompress usually mean one of the two thing, A. you did not pass console=... or B. the kernel was compiled without serial tty support.

What is interesting is that if I boot from NAND the SDHC card IS detected. It does indeed look like the SDHC card is not detected correctly when I copy uImage from the card into memory and then boot from memory. No idea why that should be. Here is what happens when I boot from NAND ...
I think there is one thing you may misunderstand. The 'NAND' is a form of storage in sheevaplug case. It is not memory in the since of you everyday PC. So when you boot from ether NAND or SD you always copy kernel in to memory and execute from memory.

Just remember one thing about why after the kernel decompress message nothing else come out. There are hardcoded stuff in u-boot to control how to load kernel. for any kernel version newer then the one come with sheevaplug you need to set two new [ttu-boot[/tt] environment variables
Code:
Marvell>> setenv mainlineLinux yes
Marvell>> setenv arcNumber 2097
Marvell>> saveenv

Good luck Smiley
Logged

Good Luck Smiley

hideoushog
Newbie
*

Karma: 0
Posts: 23


View Profile
« Reply #8 on: February 22, 2010, 07:34:53 PM »

Questions to answer.

My SDHC card is a single partition.
I do understand that uImage is stored in NAND, then copied to RAM before booting from RAM.
I also understand that uImage can be copied from SDcard into RAM and then booted from RAM.

Both these operations work as long as I make no reference to mmcblk0p1.
I have also managed to use tftpboot lo load the kernel into ram, with subsequent successful boot.

However, despite the fact that it appears impossible to boot the kernel with the SDcard as the root of the filesystem, once booted into Linux, the SD card files system can be mounted.

#mount /dev/mmcblk0p1 /mnt/sdcard

It is suggested that no output from the kernel bootstrap indicates either that the kernel is compiled without ttyS0 support or  that I have not started up ttyS0. Somebody in the know will have to tell me if the kernel is compiled without bootstrap support. For my part I am sure I have set up correctly. Please check my log though. I think I have included all salient information.

Booting uImage 2.6.32.8 (The latest and greatest presumably)

Code:
Marvell>> mmcinit
SDHC found. Card desciption is:
Manufacturer:       0x03, OEM "SD"
Product name:       "SD08G", revision 8.0
Serial number:      1890933963
Manufacturing date: 8/2009
CRC:                0x00, b0 = 0
Marvell>> ext2ls mmc 0 /boot
<DIR>       4096 .
<DIR>       4096 ..
           14967 vfat.ko
           65757 fat.ko
         2014240 uImage
         2014240 sheeva-2.6.22.18-uImage
         2821728 sheeva-2.6.32.8-uImage
         2619032 sheeva-2.6.30.1-uImage
         2770300 sheeva-2.6.31.1-uImage
              57 sheeva-2.6.32.8-uImage.md5
         4239718 sheeva-2.6.32.8-Modules.tar.gz
Marvell>> ext2load mmc 0 0x800000 /boot/sheeva-2.6.32.8-uImage

2821728 bytes read
Marvell>> setenv bootargs=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip= 10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Marvell>> printenv bootargs
bootargs=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip=10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Marvell>> setenv mainlineLinux yes
Marvell>> setenv arcNumber 2097
Marvell>> bootm 0x800000
## Booting image at 00800000 ...
   Image Name:   Linux-2.6.32.8
   Created:      2010-02-09  21:36:08 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2821664 Bytes =  2.7 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

Thats it folks.

OK so how about with the the old kernel 2.6.22.18 This time we must "setenv mainlineLinux=no". At least we now get some output.

Code:
Marvell>> mmcinit
SDHC found. Card desciption is:
Manufacturer:       0x03, OEM "SD"
Product name:       "SD08G", revision 8.0
Serial number:      1890933963
Manufacturing date: 8/2009
CRC:                0x00, b0 = 0
Marvell>> ext2load mmc 0 0x800000 /boot/sheeva-2.6.22.18-uImage

2014240 bytes read
Marvell>> setenv mainlineLinux no
Marvell>> setenv bootargs=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip= 10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Marvell>> bootm 0x800000
## Booting image at 00800000 ...
   Image Name:   Linux-2.6.22.18-6plug
   Created:      2009-03-11  18:32:36 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2014176 Bytes =  1.9 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Linux version 2.6.22.18-6plug (sapere@dellgentoo) (gcc version 4.2.1) #1 Wed Mar 11 11:32:30 PDT 2009
CPU: ARM926EJ-S [56251311] revision 1 (ARMv5TE), cr=00053977
Machine: Feroceon-KW
Using UBoot passing parameters structure
Memory policy: ECC disabled, Data cache writeback
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
Built 1 zonelists.  Total pages: 130048
Kernel command line: console=ttyS0,11520 root=/dev/mmcblk0p1 rw ip= 10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Unknown boot option `10.4.50.5:': ignoring
Unknown boot option `10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none': ignoring
PID hash table entries: 2048 (order: 11, 8192 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 256MB 256MB 0MB 0MB = 512MB total
Memory: 515584KB available (3696K code, 262K data, 104K init)
Security Framework v1.0.0 initialized
SELinux:  Initializing.
selinux_register_security:  Registering secondary module capability
Capability LSM initialized as secondary
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16

CPU Interface
-------------
SDRAM_CS0 ....base 00000000, size 256MB
SDRAM_CS1 ....base 10000000, size 256MB
SDRAM_CS2 ....disable
SDRAM_CS3 ....disable
PEX0_MEM ....base e8000000, size 128MB
PEX0_IO ....base f2000000, size   1MB
INTER_REGS ....base f1000000, size   1MB
NFLASH_CS ....base fa000000, size   2MB
SPI_CS ....base f4000000, size  16MB
BOOT_ROM_CS ....no such
DEV_BOOTCS ....no such
CRYPT_ENG ....base f0000000, size   2MB

  Marvell Development Board (LSP Version KW_LSP_4.2.7_patch2)-- SHEEVA PLUG  Soc: 88F6281 A0 LE

 Detected Tclk 200000000 and SysClk 400000000
MV Buttons Device Load
Marvell USB EHCI Host controller #0: c0891200
PEX0 interface detected no Link.
PCI: bus0: Fast back to back transfers enabled
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
Time: kw_clocksource clocksource has been installed.
IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
TCP established hash table entries: 65536 (order: 7, 524288 bytes)
TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
RTC registered
Use the XOR engines (acceleration) for enhancing the following functions:
  o RAID 5 Xor calculation
  o kernel memcpy
  o kenrel memzero
Number of XOR engines to use: 4
cesadev_init(c000c8c8)
mvCesaInit: sessions=640, queue=64, pSram=f0000000
Warning: TS unit is powered off.
MV Buttons Driver Load
audit: initializing netlink socket (disabled)
audit(1266890265.989:1): initialized
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler anticipatory registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
serial8250.0: ttyS1 at MMIO 0xf1012100 (irq = 34) is a 16550A
Loading Marvell Ethernet Driver:
  o Cached descriptors in DRAM
  o DRAM SW cache-coherency
  o Single RX Queue support - ETH_DEF_RXQ=0
  o Single TX Queue support - ETH_DEF_TXQ=0
  o TCP segmentation offload enabled
  o Receive checksum offload enabled
  o Transmit checksum offload enabled
  o Network Fast Processing (Routing) supported
  o Driver ERROR statistics enabled
  o Driver INFO statistics enabled
  o Proc tool API enabled
  o Rx descripors: q0=128
  o Tx descripors: q0=532
  o Loading network interface(s):
    o eth0, ifindex = 1, GbE port = 0

Warning: Giga 1 is Powered Off

mvFpRuleDb (dfca0000): 16384 entries, 65536 bytes
Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
Copyright (c) 1999-2006 Intel Corporation.
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k4-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation

Warning Sata is Powered Off
NFTL driver: nftlcore.c $Revision: 1.98 $, nftlmount.c $Revision: 1.41 $
NAND device: Manufacturer ID: 0xec, Chip ID: 0xdc (Samsung NAND 512MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 420 at 0x03480000
Bad eraseblock 421 at 0x034a0000
Bad eraseblock 1445 at 0x0b4a0000
Bad eraseblock 3544 at 0x1bb00000
Bad eraseblock 4046 at 0x1f9c0000
Bad eraseblock 4047 at 0x1f9e0000
Using static partition definition
Creating 3 MTD partitions on "nand_mtd":
0x00000000-0x00100000 : "u-boot"
0x00100000-0x00300000 : "uImage"
0x00300000-0x20000000 : "root"
ehci_marvell ehci_marvell.70059: Marvell Orion EHCI
ehci_marvell ehci_marvell.70059: new USB bus registered, assigned bus number 1
ehci_marvell ehci_marvell.70059: irq 19, io base 0xf1050100
ehci_marvell ehci_marvell.70059: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
USB Universal Host Controller Interface driver v3.0
usbcore: registered new interface driver usblp
drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
Linux telephony interface: v1.00
Marvell Telephony Driver:

Warning Tdm is Powered Off
md: linear personality registered for level -1
md: raid0 personality registered for level 0
md: raid1 personality registered for level 1
raid6: int32x1     98 MB/s
raid6: int32x2    114 MB/s
raid6: int32x4    122 MB/s
raid6: int32x8    110 MB/s
raid6: using algorithm int32x4 (122 MB/s)
md: raid6 personality registered for level 6
md: raid5 personality registered for level 5
md: raid4 personality registered for level 4
raid5: measuring checksumming speed
   arm4regs  :  1084.400 MB/sec
   8regs     :   754.800 MB/sec
   32regs    :   900.000 MB/sec
raid5: using function: arm4regs (1084.400 MB/sec)
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
usbcore: registered new interface driver usbhid
drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
Advanced Linux Sound Architecture Driver Version 1.0.14 (Thu May 31 09:03:25 2007 UTC).
ALSA device list:
  No soundcards found.
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
Root-NFS: No NFS server available, giving up.
VFS: Unable to mount root fs via NFS, trying floppy.
List of all partitions:
1f00       1024 mtdblock0 (driver?)
1f01       2048 mtdblock1 (driver?)
1f02     521216 mtdblock2 (driver?)
No filesystem could mount root, tried:  jffs2
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)


As mentioned, it looks like the SDHC is not being initialised. But why?

Logged

pingtoo
Sr. Member
****

Karma: 15
Posts: 318


View Profile
« Reply #9 on: February 23, 2010, 09:06:34 AM »

Did you cut and paste output from your terminal emulation program? If you does than it is rather strange, for example
Code:
2821728 bytes read
Marvell>> setenv bootargs=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip= 10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Marvell>> printenv bootargs
bootargs=console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip=10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
In your setenv bootargs=... you have ip= 10.4.50.5:... however the printenv bootargs show the ip=10.4.50.5: 10.4.50.5.10... the space between the equal sign and the IP address was shifted to second part. This does not make sense if you were cut and paste. It could only mean ether your terminal emulation program is doing strange thing or you u-boot have some strange bug. This problem also manifest in this portion of your output
Code:
CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
Built 1 zonelists.  Total pages: 130048
Kernel command line: console=ttyS0,11520 root=/dev/mmcblk0p1 rw ip= 10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none
Unknown boot option `10.4.50.5:': ignoring
Unknown boot option `10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none': ignoring
Noticing the console=ttyS0,11520 the baudrate is wrong yet the plug can sent output to your terminal program.

It was never made clear that you did not compile your own kernel that is the reason I guess you kernel may have missing serial tty support. So if you got your kernel from somewhere that is build for sheevaplug than I would guess whoever build it must have tty support build in.

Lets try something simple to debug why the newer version kernel does not work. please do
Code:
Marvell>> setenv mainlineLinux yes
Marvell>> setenv arcNumber 2097
Marvell>> saveenv
Marvell>> reset
Marvell>> mmcinit
Marvell>> ext2load mmc 0 0x800000 /boot/sheeva-2.6.32.8-uImage
Marvell>> setenv bootargs 'console=ttyS0,115200 root=/dev/mmcblk0p1 debug'
Marvell>> bootm 0x800000
The debug should tell kernel to produce more verbose messages.

Hey, after I finish typing above I notice your did setenv bootargs=console=..., this is incorrect. When your try to set u-boot environment variable use setenv command you do not need the equal sign between your variable name and its argument. For example you should have it like this
Code:
Marvell>> setenv bootargs 'console=ttyS0,115200 root=/dev/mmcblk0p1 rw ip= 10.4.50.5: 10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none'

Good luck Smiley
Logged

Good Luck Smiley

hideoushog
Newbie
*

Karma: 0
Posts: 23


View Profile
« Reply #10 on: February 23, 2010, 10:23:47 AM »

 Smiley At last it works. Thankyou Pingtoo so much.

So I need to be very careful about spaces in the argument list and simplify my arguments as much as possible. Statements about woods and trees. This is the problem with doing things by rote from FAQ/HOWTO examples when you dont totally understand what you are doing.

Logged

hideoushog
Newbie
*

Karma: 0
Posts: 23


View Profile
« Reply #11 on: February 24, 2010, 05:34:29 AM »

Pingtoo ... I notice in your command sequence you set the mainlineLinux variable, save it and then do a reset.

Why is the reset operation necessary? What is tit that the boot loader is doing?

I can tell you that if you don't do the reset it does not work. Hangs after loading the kernel .....

This means dual booting is IMPOSSIBLE;
Logged

pingtoo
Sr. Member
****

Karma: 15
Posts: 318


View Profile
« Reply #12 on: February 24, 2010, 06:23:27 AM »

Pingtoo ... I notice in your command sequence you set the mainlineLinux variable, save it and then do a reset.

Why is the reset operation necessary? What is tit that the boot loader is doing?

I can tell you that if you don't do the reset it does not work. Hangs after loading the kernel .....

This means dual booting is IMPOSSIBLE;
The reset is to ensure when u-boot startup it will be in right condition. this only one time process it should not be necessary for every reboot.

Quote
... What is tit that the boot loader is doing?
what is 'tit'?
Logged

Good Luck Smiley

mundhra
Newbie
*

Karma: 1
Posts: 36


View Profile
« Reply #13 on: February 24, 2010, 10:49:56 AM »

good catch, pingtoo. i looked over that with bleary eyes and had no idea.

hideoushog, the saveenv is writing the uboot environment variables to NAND. the reset is restarting uboot as would happen if you were to cycle power on the sheeva.

once you do the saveenv, you shouldn't have to do

Code:
Marvell>> setenv mainlineLinux yes
Marvell>> setenv arcNumber 2097

ever again.

likewise, if the following worked:

Code:
Marvell>> mmcinit
Marvell>> ext2load mmc 0 0x800000 /boot/sheeva-2.6.32.8-uImage
Marvell>> setenv bootargs 'console=ttyS0,115200 root=/dev/mmcblk0p1 debug'
Marvell>> bootm 0x800000

you should reboot, update bootcmd_sd and bootargs_sd appropriately based on what's above, saveenv, reset and be done.


Logged

Pages: [1]
Print
Jump to: