summaryrefslogtreecommitdiff
path: root/board/netstar/crcit.c
diff options
context:
space:
mode:
authorMinkyu Kang <mk7.kang@samsung.com>2010-02-06 17:20:09 +0900
committerMinkyu Kang <mk7.kang@samsung.com>2010-02-06 17:20:09 +0900
commitbdaef38171c9ea030bae46b798aba4f430dcac18 (patch)
tree4da072aceaa42e7ff3ec9962f5d99a9ca667ace9 /board/netstar/crcit.c
parented44387f406ca0e695609270a1282e699111a945 (diff)
parentc20a3c0bac909a0a1311eaafdec156b6a8686d46 (diff)
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts: cpu/arm_cortexa8/s5pc1xx/cache.c include/configs/spear6xx.h lib_ppc/reloc.S Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
Diffstat (limited to 'board/netstar/crcit.c')
-rw-r--r--board/netstar/crcit.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/board/netstar/crcit.c b/board/netstar/crcit.c
index e0cea9b3fb6..0eef41a11ed 100644
--- a/board/netstar/crcit.c
+++ b/board/netstar/crcit.c
@@ -56,13 +56,14 @@ static int do_crc(char *path, unsigned version)
fprintf(stderr, "File too large\n");
return EXIT_FAILURE;
}
- size = (size + 3) & ~3; /* round up to 4 bytes */
- data[0] = size + 4; /* add size of version field */
+ size = (size + 3) & ~3; /* round up to 4 bytes */
+ size += 4; /* add size of version field */
+ data[0] = size;
data[1] = version;
- data[2 + (size >> 2)] = crc32(0, (unsigned char *)(data + 1), data[0]);
+ data[size/4 + 1] = crc32(0, (unsigned char *)(data + 1), size);
close(fd);
- if (write(STDOUT_FILENO, data, size + 3*4) == -1) {
+ if (write(STDOUT_FILENO, data, size + 4 /*size*/ + 4 /*crc*/) == -1) {
perror("Error writing file");
return EXIT_FAILURE;
}