I've committed a fix where a warning is printed that verification will
fail when calc_checksum will write a diffferent value than that in the image.
I don't know what the best solution would be here, but there is at least
some hope that the user can figure out what's going on with the verification
failure now...
### Eclipse Workspace Patch 1.0
#P openocd
Index: src/flash/lpc2000.c
===================================================================
--- src/flash/lpc2000.c (revision 1576)
+++ src/flash/lpc2000.c (working copy)
@@ -531,6 +531,15 @@
}
checksum = 0 - checksum;
LOG_DEBUG("checksum: 0x%8.8x", checksum);
+
+ u32 original_value=buf_get_u32(buffer + (5 * 4), 0, 32);
+ if (original_value!=checksum)
+ {
+ LOG_WARNING("Verification will fail since checksum in
image(0x%8.8x) written to flash was different from calculated vector
checksum(0x%8.8x).",
+ original_value, checksum);
+ LOG_WARNING("To remove this warning modify build tools
on
developer PC to inject correct LPC vector checksum.");
+ }
+
buf_set_u32(buffer + 0x14, 0, 32, checksum);
}
--
Øyvind Harboe
Embedded software and hardware consulting services
http://consulting.zylin.com
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development