• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: newly installed (gentoo) sheevaPlug (arm) hangs before boot  (Read 2281 times)
Oo.et.oO
Newbie
*

Karma: 0
Posts: 7


View Profile
« on: July 06, 2010, 07:56:11 AM »

hi all,
i used the arm handbook (http://www.gentoo.org/doc/en/handbook/handbook-arm.xml)
and this: http://dev.gentoo.org/~armin76/arm/sheevaplug/install.xml

amongst some other things.
i pretty much ignored the bootloader stuff in the handbook and just did:
Code:
$> cat arch/arm/boot/uImage > /dev/mtdblock1

i also copied vmlinux to /boot

i have /boot on /dev/mmcblk0p1 and / (root) on /dev/mmcblk0p3
(these are the two non-swap partitions on the SD card, /boot is ext2 and / is ext4)

Code:
Marvell>> setenv bootcmd nand read 0x01000000 0x00100000 0x00400000\;setenv bootargs $(console) root=/dev/mmcblk0p3 rootdelay=5\; bootm 0x01000000
Marvell>> saveenv

it freezes thusly:

Code:
NAND read: device 0 offset 0x100000, size 0x400000
 4194304 bytes read: OK
## Booting image at 01000000 ...
   Image Name:   Linux-2.6.32-gentoo-r7
   Created:      2010-06-22  22:25:53 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2103472 Bytes =  2 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

and then does nothing.  nothing in the serial term, can't ping the IP it sets, etc

Logged

fragfutter
Sr. Member
****

Karma: 12
Posts: 280


View Profile
« Reply #1 on: July 06, 2010, 08:27:43 AM »

did you compile in serial console support into your kernel? Is the u-boot env variable console defined?
Logged

Oo.et.oO
Newbie
*

Karma: 0
Posts: 7


View Profile
« Reply #2 on: July 06, 2010, 08:46:21 AM »

sorry, was going to post my uboot env and .config but lost my connection...

my uboot env:
Code:
Marvell>> printenv
baudrate=115200
loads_echo=0
rootpath=/mnt/ARM_FS/
console=console=ttyS0,115200
CASset=min
MALLOC_len=1
ethprime=egiga0
bootargs_root=root=/dev/mtdblock2 ro
ethmtu=1500
usb0Mode=host
nandEcc=1bit
ethact=egiga0
cesvcid=ULULULULULULPPULULULULULDA
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;
mvPhoneConfig=mv_phone_config=dev0:fxs,dev1:fxs
mvNetConfig=mv_net_config=(00:11:88:0f:62:81,0:1:2:3),mtu=1500
yuk_ethaddr=00:00:00:EE:51:81
netretry=no
rcvrip=169.254.100.100
loadaddr=0x02000000
autoload=no
ethaddr=00:50:43:01:6C:8F
run_diag=no
filesize=28a738
fileaddr=2000000
netmask=255.255.0.0
bootargs=console=ttyS0,115200 root=/dev/ram rw
serverip=192.168.1.42
arcNumber=2097
ipaddr=192.168.1.50
bootcmd=nand read 0x01000000 0x00100000 0x00400000;setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p3 rootdelay=5; bootm 0x01000000
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

Environment size: 1286/131068 bytes
Logged

Oo.et.oO
Newbie
*

Karma: 0
Posts: 7


View Profile
« Reply #3 on: July 06, 2010, 08:58:10 AM »

aaaaaand my .config (attached)
(and yes i see the sheevaplug board/processor type that i've selected as well as kirkwood.  and serial console is compiled in)

* .configSheeva (43.7 KB - downloaded 96 times.)
Logged

birdman
Sr. Member
****

Karma: 4
Posts: 440


View Profile WWW
« Reply #4 on: July 06, 2010, 02:44:10 PM »

and then does nothing.  nothing in the serial term, can't ping the IP it sets, etc
It hasn't set an IP address.  It's hung long before it would get there.
You're trying to use rootfs on the SD card, but you haven't initialized the controller.
You need an mmcinit in your boot sequence.  Add it to the start of your bootcmd.
Logged

Oo.et.oO
Newbie
*

Karma: 0
Posts: 7


View Profile
« Reply #5 on: July 07, 2010, 08:29:04 AM »

okay so i did:
Code:
setenv bootcmd 'mmcinit; nand read 0x01000000 0x00100000 0x00400000;setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p3 rootdelay=5; bootm 0x01000000'

which results in:
Code:
bootcmd=mmcinit; nand read 0x01000000 0x00100000 0x00400000;setenv bootargs console=ttyS0,115200 root=/dev/mmcblk0p3 rootdelay=5; bootm 0x01000000

is bootargs in my env supposed to be set to that last part in the above?  or is bootcmd really setting that when it's run?

anyway, this ends up with the freeze in the same place.  just in case i don't have the serial term setup right i've waited for a while to see if it actually booted and i can't see it, and then tried pinging it to no avail, so it's probably still not finding my root partition
Logged

fragfutter
Sr. Member
****

Karma: 12
Posts: 280


View Profile
« Reply #6 on: July 07, 2010, 08:54:29 AM »

disregarding the mmcinit you should see the kernel starting up and spilling messages before it tries to mount the rootfs.
Logged

Oo.et.oO
Newbie
*

Karma: 0
Posts: 7


View Profile
« Reply #7 on: July 07, 2010, 09:34:44 AM »

disregarding the mmcinit you should see the kernel starting up and spilling messages before it tries to mount the rootfs.

oh right.  i didn't even think about that. 

so, regarding the mmcinit...?   what else could it be?  i just copied those hex locations from the gentoo sheevaplug howto, i don't know what they mean.  is there info around on that?

this platforms boot procedures mystify me
thanks for the replies and help!
Logged

fragfutter
Sr. Member
****

Karma: 12
Posts: 280


View Profile
« Reply #8 on: July 07, 2010, 10:17:42 AM »

how did you compile the kernel? cross-compiler? and what version?
Logged

Oo.et.oO
Newbie
*

Karma: 0
Posts: 7


View Profile
« Reply #9 on: July 07, 2010, 10:36:11 AM »

how did you compile the kernel? cross-compiler? and what version?
compiled it on the plug in my gentoo install

gentoo-sources 2.6.30-r4
Logged

fragfutter
Sr. Member
****

Karma: 12
Posts: 280


View Profile
« Reply #10 on: July 07, 2010, 10:36:36 AM »

no, the gcc version. i had serious trouble with gcc 4.5 and kernels.
« Last Edit: July 07, 2010, 10:47:08 AM by fragfutter » Logged

Oo.et.oO
Newbie
*

Karma: 0
Posts: 7


View Profile
« Reply #11 on: July 07, 2010, 12:18:11 PM »

no, the gcc version. i had serious trouble with gcc 4.5 and kernels.

gcc (Gentoo 4.3.4 p1.1, pie-10.1.5) 4.3.4
Logged

birdman
Sr. Member
****

Karma: 4
Posts: 440


View Profile WWW
« Reply #12 on: July 07, 2010, 03:42:18 PM »

FWIW - the nand read bits I had, from both the alpha6 and 1.0 installers, were:
Quote
nand read.e 0x00800000 0x00100000 0x00400000; bootm 0x00800000
I have no idea of the significance of read.e vs. read.
Logged

fragfutter
Sr. Member
****

Karma: 12
Posts: 280


View Profile
« Reply #13 on: July 08, 2010, 12:43:20 AM »

the kernel is read correctly. AFAIK the uImage contains a header and a checksum, it matches otherwise it would not even try to start the kernel.
Logged

Pages: [1]
Print
Jump to: