[U-Boot-Users] Can't boot uClinux image on mcf5329evb
Robert S. Grimes
rsg at alum.mit.edu
Mon Aug 6 03:32:38 CEST 2007
Hi,
I've successfully built, installed, and booted a recent (late July)
u-boot configured for the Freescale M5329EVB - way cool! I seem to be
able to exercise all the commands, and they work great. I've been able
to download a test script in an image using mkimage, and execute it, so
I think that is more or less working. What I can't do is download and
run a working uClinux image.
Here's what I've done:
On Linux host:
$ mkimage -A m68k -O linux -T kernel -C none -a 40020000 -e 40020000 \
-n "uClinux test" -d /tftpboot/image.bin test.kernel.img
Image Name: uClinux test
Created: Sun Aug 5 20:59:09 2007
Image Type: MC68000 Linux Kernel Image (uncompressed)
Data Size: 3148804 Bytes = 3075.00 kB = 3.00 MB
Load Address: 0x40020000
Entry Point: 0x40020000
On target (in u-boot):
U-Boot 1.2.0 (Jul 26 2007 - 22:20:01)
CPU: Freescale MCF5329 (Mask:54 Version:1)
CPU CLK 240 Mhz BUS CLK 80 Mhz
Board: Freescale FireEngine 5329 EVB
DRAM: 16 MB
FLASH: 2 MB
In: serial
Out: serial
Err: serial
Net: FEC0
-> tftp 40020000 test.kernel.img
Using FEC0 device
TFTP from server 192.168.1.107; our IP address is 192.168.1.27
Filename 'test.kernel.img'.
Load address: 0x40020000
Loading: TX timeout
#####<snip>#####
done
Bytes transferred = 3148868 (300c44 hex)
But when I try to boot it, it fails:
-> bootm 40020000
## Booting image at 40020000 ...
Image Name: uClinux test
Created: 2007-08-06 0:59:09 UTC
Image Type: M68K Linux Kernel Image (uncompressed)
Data Size: 3148804 Bytes = 3 MB
Load Address: 40020000
Entry Point: 40020000
Verifying Checksum ... OK
XIP Kernel Image ... OK
Starting kernel ...
*** Unexpected exception ***
Vector Number: 4 Format: 04 Fault Status: 0
PC: 40020006 SR: 00002700 SP: 40f2da10
D0: 00000000 D1: 0000000a D2: 40f2da90 D3: 40f77004
D4: 40f77018 D5: 00000000 D6: 00000000 D7: 40f3df90
A0: 40020000 A1: 40f69404 A2: 40f7b748 A3: 4002003c
A4: 40f2dec0 A5: 40f77100 A6: 40f2da9c
*** Please Reset Board! ***
I'm not sure where to turn now. I know the uClinux image is okay, as I
can download it to RAM (again, at 0x40020000) and run it (using "go
0x40020000" command) using Freescale Dbug monitor. So I also know the
SDRAM (16 MB starting at 0x40000000) is okay. I'm pretty sure the
location is okay, as u-boot appears to set 0x40010000 as the beginning
of "user" space. Downloading over the network seems perfect (and
fast!). The image makes it to the target okay, as uboot recognizes it
and the checksum passes. One thing I'm not sure about is the vector
table, which uClinux has configured for 0x40000000; is this okay?
I think I am missing something pretty fundamental, and am prepared to
feel stupid, so please help!
Thanks!
-Bob
More information about the U-Boot
mailing list