错误信息:
NAND read: device 0 offset 0xa0000, size 0x200000
2097152 bytes read: error## Booting kernel from Legacy Image at 72000000 ...
Image Name: Linux-2.6.30
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1939156 Bytes = 1.8 MB
Load Address: 70008000
Entry Point: 70008000
Verifying Checksum ... Bad CRC or data
Error: Can't get kernel image!
造成这个错误的原因可能有许多,在这儿只是说明下我的这个问题是如何解决的。
我在烧写uImage的时候就感觉有点问题,烧写的的块数比以前多一个,也就是说我烧写的内核地址可能刚好碰到了一个坏块,然后在烧写的时候就自动跳过坏块。在uboot里使用命令“help nand”可以看到各种关于nandflash的各种命令,使用“nand bad”命令可以查看nandflash所有的坏块。我的那个nandflash有烧写内核的地方果然有一个坏块。
发现这个坏块后,使用“nand scrub”命令强制擦除坏块,uboot之类的也随之被擦除了。
重新烧写所有的东西,一切正常!至于具体的原因有待进一步了解!