tftp文件大小:
tftpboot 0x80700000 uImage_ipnc_dm368
TFTP from server 10.100.4.9; our IP address is 10.100.4.249
Filename 'uImage_ipnc_dm368'.
Load address: 0x80700000
Loading: #################################################################
#################################################################
###################################################
done
Bytes transferred = 2649900 (286f2c hex)
nand erase:
nand erase 0x500000 0x400000
擦除的大小远大于文件的大小
nand write:
nand write 0x80700000 0x500000 0x400000
写入的日志显示ok
nand dump:0x786f2c = 0x500000 + 286f2c
nand dump 0x786f2c 100
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
88 e8 28 c0 00 00 00 00 6c 8a 21 c0 00 8f 21 c0
80 8a 21 c0 2c 91 21 c0 02 00 08 00 00 04 00 00
f0 88 21 c0 00 00 00 00 d8 8f 21 c0 4c 89 21 c0
00 00 00 00 00 00 00 00 28 89 21 c0 0c 01 00 00
00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00
从dump的信息看出,写入的内容大于文件的大小
断电后,启动内核日志如下:
Loading from NAND 128MiB 3,3V 8-bit, offset 0x500000
Image Name: Linux-2.6.18_pro500-davinci_IPNC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2649836 Bytes = 2.5 MB
Load Address: 80008000
Entry Point: 80008000
## Booting kernel from Legacy Image at 80700000 ...
Image Name: Linux-2.6.18_pro500-davinci_IPNC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2649836 Bytes = 2.5 MB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... Bad Data CRC
data size = 2649836 < 2649900 这可能是导致CRC校验失败的原因
麻烦大家帮忙看看,分析什么原因,谢谢