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
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to