2 * Copryright (C) 2010 Samsung Electronics
4 * Generate the checksum at S5PC210 EVT0
6 * Kyungmin Park <kyungmin.park@samsung.com>
11 #include <sys/types.h>
23 #define CHECKSUM_8K (SZ_8K - 0x4)
26 * For 2KiB page OneNAND
27 * +------+------+------+------+------+------+------+------+
28 * | 2KiB | 2KiB | 2KiB | 2KiB | 2KiB | 2KiB | 2KiB | 2KiB |
29 * +------+------+------+------+------+------+-----C+------+
31 #define CHECKSUM_16K (SZ_14K - 0x4)
33 int main(int argc, char *argv[])
43 unsigned int header[4];
51 fd = open(argv[1], O_RDWR);
54 printf("open err: %s\n", argv[1]);
58 ret = fstat(fd, &stat);
64 if (stat.st_size > SZ_8K)
69 for (i = 0; i < size; i++) {
70 ret = read(fd, &buf, 1);
82 printf("%02x ", buf & 0xFF);
89 ret = write(fd, &sum, 4);
92 printf("read err: %s\n", ret);
96 printf("checksum = %x\n", sum);
99 fd0 = open("header.bin", O_RDWR | O_CREAT | O_TRUNC,
103 printf("open err: header.bin\n");
107 if (size == CHECKSUM_16K)
115 ret = write(fd0, header, 16);