Verification will fail since checksum....

Open source ARM Debugger
Locked
mgiaco82
Posts: 27
Joined: Sat Dec 16, 2006 7:39 am

Verification will fail since checksum....

Post by mgiaco82 » Fri Jul 17, 2009 11:27 pm

Hello,
Debugging works fine and is really fast with open ocd 0.2.0 but i got some warnings i do not know whats wrong.

The strangest one is: Verification will fail since checksum in image(0xe1a00000) written to flash was different from calculated vector checksum(0xa1b11eac).

What could be the reason for this warning?

thanks
mgiaco

  • Open On-Chip Debugger 0.2.0 (2009-07-17-18:08) Release
    $URL: http://svn.berlios.de/svnroot/repos/ope ... /openocd.c $
    For bug reports, read http://svn.berlios.de/svnroot/repos/openocd/trunk/BUGS
    30 kHz
    jtag_nsrst_delay: 200
    jtag_ntrst_delay: 200
    Info : device: 4
    Info : deviceID: 67358712
    Info : SerialNumber: 32OZPDQCA
    Info : Description: Amontec JTAGkey A
    Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
    Info : JTAG Tap/device matched
    target state: halted
    target halted in ARM state due to breakpoint, current mode: Supervisor
    cpsr: 0x60000013 pc: 0x40000070
    30 kHz
    Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
    Info : JTAG Tap/device matched
    Warn : srst pulls trst - can not reset into halted mode. Issuing halt after reset.
    target state: halted
    target halted in Thumb state due to debug-request, current mode: Supervisor
    cpsr: 0xa00000f3 pc: 0x7fffd2c0
    requesting target halt and executing a soft reset
    target state: halted
    target halted in ARM state due to debug-request, current mode: Supervisor
    cpsr: 0xa00000d3 pc: 0x00000000
    1500 kHz
    Info : accepting 'gdb' connection from 0
    Warn : acknowledgment received, but no packet pending
    30 kHz
    Info : JTAG tap: lpc2148.cpu tap/device found: 0x4f1f0f0f (mfg: 0x787, part: 0xf1f0, ver: 0x4)
    Info : JTAG Tap/device matched
    Warn : srst pulls trst - can not reset into halted mode. Issuing halt after reset.
    target state: halted
    target halted in Thumb state due to debug-request, current mode: Supervisor
    cpsr: 0xa00000f3 pc: 0x7fffd2c0
    requesting target halt and executing a soft reset
    target state: halted
    target halted in ARM state due to debug-request, current mode: Supervisor
    cpsr: 0xa00000d3 pc: 0x00000000
    1500 kHz
    0xe01fc040: 00000001
    Warn : Verification will fail since checksum in image(0xe1a00000) written to flash was different from calculated vector checksum(0xa1b11eac).
    Warn : To remove this warning modify build tools on developer PC to inject correct LPC vector checksum.
    Warn : memory read caused data abort (address: 0x742290e0, size: 0x4, count: 0x2)
    Warn : memory read caused data abort (address: 0xfbffedfe, size: 0x1, count: 0x2)

mgiaco82
Posts: 27
Joined: Sat Dec 16, 2006 7:39 am

Post by mgiaco82 » Sun Jul 19, 2009 1:05 am

I do not know what i can do to fix this warning: Verification will fail since checksum in image(0xe1a00000) written to flash was different from calculated vector checksum(0xa1b11eac).

Please can someone give me a hint.

thanks

Freddie Chopin
Posts: 108
Joined: Thu Feb 05, 2009 11:17 am
Location: Poland
Contact:

Post by Freddie Chopin » Sun Jul 19, 2009 2:21 am

Ignore that.

The 6th interrupt vector for LPC2000 holds a checksum that validates user code. This checksum is injected by OpenOCD, not the compiler, so genrally the image you'd download from the core would be different than the one you had from the compiler.

4\/3!!
[size=9]......nihil verum nisi mors......
[color=lightgrey].........only death is real.........[/color][/size]

:: [url=http://www.freddiechopin.info/]freddiechopin.info[/url] :: [url=http://www.lastfm.pl/user/freddie_chopin]last.fm[/url] ::

mgiaco82
Posts: 27
Joined: Sat Dec 16, 2006 7:39 am

Post by mgiaco82 » Sun Jul 19, 2009 2:34 pm

Yes i know that, but this checksum must be a valid checksum or my programm doesn´t work. It´s weird because the prgram works fine.

So i ignore that for now but why OpenOCD change this checksum?

thx

cat52
Posts: 2
Joined: Thu Jul 30, 2009 1:38 pm

Post by cat52 » Wed Aug 12, 2009 6:30 am

openocd performs a checksum and compare with checksum in your binary file. Since the compiler won't generate these checksum for you, it is filled with zeroes.

openocd will program this checksum into your flash. You can use flashmagic to verify those bytes.

To eliminate the warning, you might want to fill the checksum in the startup file at the appropriate location

khandro
Posts: 1
Joined: Mon Oct 05, 2009 1:53 pm

Post by khandro » Mon Oct 05, 2009 2:27 pm

Hi,

I had the same problem with the checksum and solved it today
by installing a newer toolchain.
Before, my arm-elf-gcc and arm-elf-gdb (Linux version) were from 2006.Here the checksum was calculated wrongly and my application wouldn't start.
Now with the compiler and debugger from 2008, everything works fine.
I also tried to write the checksum myself into startup.s, but it
was overwritten. The value I inserted there never showed up in
the warning message.

Cheers, Khandro

Locked

Return to “OpenOCD”