这些天准备把镜像文件提交给生产部门,反馈回来说烧写过于复杂。因此做了一些修改。
因为开始的引导程序使用的是Nboot+Eboot的的方式,因此需要进行多次文件选择。因此,希望能只进行烧写一个文件。首先想到的是把Nboot的功能在Eboot上进行
实现,就是将搬迁程序的代码移植到eboot的startup.s中完成,这在Uboot和其他的BIOS都是这样做。其次,可以修改HJTAG的驱动,下载到新版本的HJTAG中有介绍其烧写的原理,和驱动的源代码。因此可以把Nboot和Eboot合并到一起,然后通过JTAG的NandFlash驱动中去实现。最后,有一种简单的方法,就是在Nboot的搬迁代码中,我们直接修改他指定的Eboot在Nandflash的路径。为此,在Loader.h中直接把Eboot设置成放到Nboot之后。
由于开始使用Hjtag下载图片bin文件,使用并口下载太耗时,因此必须使用USB。具体移植和问题在上一篇中介绍。
用二进制工具打开Eboot.nb0发现后面有很大一块是数据都是0,因此修改eboot.bin中指定的Eboot的大小。这样可以进一步加快HJtag烧写。
对于Nboot+Eboot的合并,写了个简单的软件。就是简单的把Eboot合并到Nboot之后。软件下载地址http://download.csdn.net/detail/qq236106303/4371295