summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2009-04-30 09:39:24 +0000
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2009-04-30 09:39:24 +0000
commitd70dac5e49b7f13c409dee728b3edc7341602ed4 (patch)
tree2f885b508d1f694a3ebd76b79066ab84b4803d73 /src
parent20f0744f397198fd2a517135b888269811d16444 (diff)
downloadopenocd+libswd-d70dac5e49b7f13c409dee728b3edc7341602ed4.tar.gz
openocd+libswd-d70dac5e49b7f13c409dee728b3edc7341602ed4.tar.bz2
openocd+libswd-d70dac5e49b7f13c409dee728b3edc7341602ed4.tar.xz
openocd+libswd-d70dac5e49b7f13c409dee728b3edc7341602ed4.zip
Print out warning when LPC calc_checksum will cause verification to fail.
git-svn-id: svn://svn.berlios.de/openocd/trunk@1578 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src')
-rw-r--r--src/flash/lpc2000.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/flash/lpc2000.c b/src/flash/lpc2000.c
index 1148df3b..db0602f1 100644
--- a/src/flash/lpc2000.c
+++ b/src/flash/lpc2000.c
@@ -531,6 +531,15 @@ static int lpc2000_write(struct flash_bank_s *bank, u8 *buffer, u32 offset, u32
}
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);
}