TQ2440 3.5寸板子:下载TQ自带的镜像文件
内核镜像:zImage_Q35_2.6.30.4_20100531.bin
文件系统镜像:root_qt_4.5_2.6.30.4_64MB_20100601.bin
下载文件系统镜像之后出现:NAND write: device 0 offset 0x400000, size 0x21c810
Input block length is not page aligned
Data did not fit into device, due to bad blocks
5648666 bytes written: ERROR 的现象,并且不能正常启动。
在U-Boot下 选择9 ,格式化nand flash后出现:
Really scrub this NAND flash? <y/N> : y
Erasing at 0x28e0000 -- 16% complete.
NAND 256MiB 3,3V 8-bit: MTD Erase failure: -5
Erasing at 0x4500000 -- 27% complete.
NAND 256MiB 3,3V 8-bit: MTD Erase failure: -5
Erasing at 0x5c20000 -- 36% complete.
NAND 256MiB 3,3V 8-bit: MTD Erase failure: -5
Erasing at 0x5ea0000 -- 37% complete.
NAND 256MiB 3,3V 8-bit: MTD Erase failure: -5
Erasing at 0x91e0000 -- 57% complete.
NAND 256MiB 3,3V 8-bit: MTD Erase failure: -5 这样现象,根据格式化信息表明板子的Nand是256MB的,而我烧写成了64MB的镜像所以会出现上面的NAND烧写错误的现象。
Nand Flash有坏块是正常的,在烧写yaffs时已经绕开了坏块了,它不会影响到你的正常使用的,这个和Nand Flash的结构有关系,三星公司生产出来的Nand Flash基本上都不能保证所有的没有坏块。当然我们可以在做u-boot的时候人为的屏蔽掉Nand坏块的信息,不过在这是不负责的行为,不应屏蔽掉这个信息。
mkyaffsimage_2命令是针对64MB的Nand Flash的。
mkyaffs2image命令是针对256MB的Nand Flash的。