OK6410 烧写LINUX系统的问题与解决

    OK6410是一款设计优良,性价比出众的基于S3C6410X-66的ARM11开发板产品。官方提供了wince6 linux android 的支持与DEMO程序。根据其手册,烧写WINCE没有什么大问题。但如果原来是WINCE,想改烧写U-boot就会出现一些问题。

    按照手册,在用SD卡启动后,下载u-boot到开发板上,用u-boot 来 erase nand flash的时候,会出现如下错误

 

$nand erase 0 100000

SKipping bad block at 0x00000000
SKipping bad block at 0x00020000
SKipping bad block at 0x00040000
SKipping bad block at 0x00060000
SKipping bad block at 0x00080000
SKipping bad block at 0x000a0000

Erasing at 0xc0000 ---- 87complete
Erasing at 0xe0000 ----100 complete

    这显然是不合理的错误。

    从现像上看,应该是u-boot的nand flash的erase过程不正确造成,应该是个软毛病。但回忆在烧写wince的过程中没有类似问题,那么wince的烧写程序应该是正确的。于是改用wince的e-boot先来执行擦除过程,再改用u-boot来写,结果过程就正常了。

    具体操作就是:在按手册的烧写过程之前,先使用sd卡下载方式,下载并执行wince的e-boot,来执行A命令(erase all blocks),这样就能清除所有块的内容。再按linux手册的方式下载u-boot执行,再用nand erase 0 100000,就不会出错了。

你可能感兴趣的:(OK6410 烧写LINUX系统的问题与解决)