Hello list,

now I could reproduce the problem here with the original
Olimex BLINK example. It will not work, the problem is the
checksum.

The startup code looks like:

_vectors:       ldr     PC, Reset_Addr
                ldr     PC, Undef_Addr
                ldr     PC, SWI_Addr
                ldr     PC, PAbt_Addr
                ldr     PC, DAbt_Addr
                nop     /* Reserved Vector (holds Philips ISP checksum) */

In this case the bootloader will start, and not the application.
Now I take a look in the openocd manual and found the following
information:

13.2.2.1 lpc2000 options
flash bank lpc2000 <base> <size> 0 0 <target> <variant> <clock> [calc
checksum]

...and the optional keyword calc checksum, telling the
driver to calculate a valid checksum for the exception vector table.

If I use now the calc_checksum options in my cfg file:

flash bank lpc2000 0x0 0x7d000 0 0 0 lpc2000_v2 14765 calc_checksum

I got the following output from OpenOCD:

> flash write_image main.hex 0x0
Verification will fail since checksum in image(0xe1a00000) written to flash
was
different from calculated vector checksum(0xb9205f84).
To remove this warning modify build tools on developer PC to inject correct
LPC
vector checksum.
wrote 756 byte from file main.hex in 0.171875s (4.295455 kb/s)

The new checksum was calculated, and the program is working.

An other solution is, to change the startup code like:

_vectors:       ldr     PC, Reset_Addr
                ldr     PC, Undef_Addr
                ldr     PC, SWI_Addr
                ldr     PC, PAbt_Addr
                ldr     PC, DAbt_Addr
                .word 0xb9205f84

In this case the correct checksum is set, and the program should work too.

Attached is the main.hex file which should work with the lpc2148 without
the calc_checksum key. LED1 and LED2 are flashing.

Best regards,

Michael

Attachment: main.hex
Description: Binary data

_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to