PXA270上的双启动已经实现了,WinCE的启动速度也提高不少,接下来开始升级NAND FLASH的驱动,由K9F1208(64M Bytes)升级到K9K8G08(1G Bytes)。
首先对比这两款NAND FLASH的Datasheet,找出两者的异同。这两个芯片的管脚完全兼容,所以升级理论上没有任何问题。Sector的大小由512Bytes变为2048Bytes,Block由4096变为8192,每个Block由32个Sector变为64个Sector,Command Sets也有一些小改变。通过对比,得出的结论是主要修改Read和Write的相关代码即可。
根据这些不同,修改EBOOT,实现Read、Write的操作。完成之后将NK.bin烧写到K9K8G08中,EBOOT也能从中加载NK并完成启动,并保持了BINFS。
接下来继续调WinCE中的NAND FLASH驱动,这就碰到问题了。1G的NAND FLASH竟然被识别成8T!
这有点夸张。还好不能用,否则难免有欺诈之嫌。
为什么不能用呢?有点奇怪,该改的地方也都改了。目前的现象是“无法格式化存储库”,
发现它在擦除每一个Block后,立即把它Mark成Bad,无一幸免,所以不能用也就可以理解了。至于为什么会这样,还得继续研究。行百里者半九十,弄完剩下的十,我的任务就完成了。