This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM355 uImage Boot question

Going through the GSG on the DM355EVM, I was having considerable trouble booting the new linux kernel (section 4.7).  Every time I tried to run it 'bootm' would give me Bad Magic Number, or just 'boot' gave me checksum bad (repeatedly).

I set the environment and went to static IP addresses per SPRAAQ0 (July 2007).

Using 'tftpboot' and then 'bootm' and it loaded and booted just fine.  Checking the date and time on the kernel, it matched the one I built.  So it seems that all is running, but I am puzzled and mildly concerned that the documented procedure didn't work.  Maybe I am missing something simple?  Environment below.

Host: RHEL 5, Target: Montavista 4.0.1 DVSDK: 1.30 Operator: Grizzled analog guy dragged kicking and screaming from writing assembler code. ;^)

 

192.168.1.47 login:  this is MT29F16G08FAA device
UBL: detected valid U-Boot magic number
UBL: booting to U-Boot


U-Boot 1.2.0 (Feb  2 2008 - 23:52:10)

DRAM:  128 MB
NAND:  NAND device: Manufacturer ID: 0x2c, Chip ID: 0xd3 (Micron NAND 1GiB 3,3V 8-bit)
Bad block table found at page 524224, version 0x01
Bad block table found at page 524160, version 0x01
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xd3 (Micron NAND 1GiB 3,3V 8-bit)
Bad block table found at page 524224, version 0x01
Bad block table found at page 524160, version 0x01
2048 MiB
In:    serial
Out:   serial
Err:   serial
ARM Clock :- 216MHz
DDR Clock :- 171MHz
Hit any key to stop autoboot:  0
DM355 EVM # printenv
bootdelay=3
baudrate=115200
filesize=248448
fileaddr=82000000
bootcmd=dhcp;bootm
rootpath=/home/phil/workdir/filesys
nfshost=192.168.1.46
serverip=192.168.1.46
ipaddr=192.168.1.47
gateway=192.168.1.1
netmask=255.255.255.0
dns1=192.168.1.2
dns2=192.168.1.3
ethaddr=00:0e:99:02:51:f4
bootargs=console=ttyS0,115200n8 noinitrd rw ip=192.168.1.47:192.168.1.46:192.168.1.1:255.255.255.0:::off root=/dev/nfs nfsroo
t=192.168.1.46:/home/phil/workdir/filesys,nolock mem=120M
bootfile=uImage
stdin=serial
stdout=serial
stderr=serial
videostd=ntsc

Environment size: 536/16380 bytes
DM355 EVM #

  • mmm, this is pretty interesting, Bad Magic Number is normally displayed when u-boot could not find a valid uImage at the location specified (dhcp,bootm); this is the result of a invalid signature at the beginning of the image.   Bad checksum normally means kernel was found but during transfer or loading, it did not pass the checksum test.  This appears to indicate that under the non-working condition, the tranfer or writting of uImage into flash did not go smoothly; this could be due to network traffic or bad sockets, cables in the non-static ip setup.  With the static ip approach, you have a more controlled enviroment with reduced network traffic and less equipement (no dhcp server required, less cables...).   Anyway, this is a possibility, though most of the issues I have seen with the dynamic ip approach have been around bad routers or dhcp servers which would prevent anything from being sent over the network.