vivi是一个主要准对s3c2410的bootload,引导linux系统。
大家都知道对于bootload,嵌入式里面最全面的应属uboot了,但是正是因为其通用性,代码还是相对比较难读的。vivi就好很多,一个小巧的bootload,读完简单很多。而且vivi还有一个特点,就是他的代码风格和linux内核部分相似,至少mtd驱动那部分我觉得还是很相似的,makefile书写方式好像也很相似。
vivi可以从nor和nand flash两种flash中启动,记得我当时要修改linux内核中mtd关于norflash的部分,linux代码太多了,看的有点晕,vivi这部分真的很相似,而且他是简略版,当时读完vivi对norflash驱动,我觉得对我理解linux内核中mtd中norflash驱动有很大的帮助。
vivi最为一个bootload,虽小但是bootload所要具备的特性他基本都有,麻雀虽小五脏俱全啊。通读vivi对我们写bootload也是一个启发,对uboot理解也是很有帮助的。
我手上有块mini2440,我准备在以后的闲余时间,在通读一遍vivi,而且把它稳定的移植到我的mini2440中,而且对于vivi的功能做进一步加强,比如实现通过usb装载代码。
总结一下,大概任务下面三个:
1、通读vivi,理解从cpu上电到引导linux之前所有过程,把对代码的理解记录下来。
2、移植到mini2440上,把移植过程写下来
3、添加usb和tftp的驱动到vivi中
阅读(793) | 评论(0) | 转发(0) |