Chinaunix首页 | 论坛 | 博客
  • 博客访问: 257028
  • 博文数量: 29
  • 博客积分: 1680
  • 博客等级: 上尉
  • 技术积分: 533
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-17 14:38
文章分类

全部博文(29)

文章存档

2014年(2)

2012年(3)

2011年(9)

2008年(15)

我的朋友

分类: LINUX

2014-05-23 16:12:59

【前言】
      这些文字只是草稿,希望对有需要的朋友有所朋友。欢迎一起探讨交流。
      
【问题】
      如何才能从无到有,针对某个SOC的板子,进行移植u-boot?

【正文】
     在给一个块ARM板子,移植Linux操作系统之前,都是要先移植好U-boot的。所以,我们也就一个问题,如何针对某块板子移植u-boot。通常,每个SOC(arm芯片)出现在市面上,SOC厂商都会开发一款demo板,并且有对应的BSP和SDK包。这样,我们在针对某款SOC做项目开发时,只要在SOC厂商提供的u-boot上,进行修改就可以了。但是,作为SOC原厂商,就需要针对自研的SOC/demo板,重新移植U-boot。

       在某种意义上,u-boot也算是一个只有一个进程的操作系统。它需要timer进行定时,需要控制台交互信息,对内存也有简单地管理,有各种各样的设备驱动可以驱动对应的设备,支持一些简单的文件系统(例如vfat格式)。不过,U-boot不具有进程调度和管理的功能,也不支持中断,它只有一个进程。

      在这这专题文章中,我只会涉及到最小系统的u-boot移植。最小系统的概念,在这里就简单定义为只包含CPU、TIMER、UART和DDR四个模块。在u-boot中,只要移植好针对这四个模块的代码,u-boot就可以正常跑起来。后续也就可以移植和调试其他硬件模块的u-boot驱动了。

       这个专题大概会分为以下几部分进行讲述。如果大家对这些内容都理解了,并且也自己动手移植了u-boot,那么相信以后遇到u-boot的各种各样的问题,自己也就慢慢调试地解决问题了。

0)前言篇
本文 

1)Makefile篇
详细讲述u-boot的Makefile体系。理解了U-boot目录下的所有相关Makefile文件之后,也就明白了,移植U-boot过程中,为何要创建各个目录;或者说,编译针对某个SOC 板子的U-boot时,相应地会编译哪些目录下的文件。

2)移植篇
在前篇的基础上,讲述如何针对(),从无到有进行移植u-boot。

3)u-boot启动分析篇
分析u-boot的启动流程,整理清楚U-boot从启动到加载并启动Linux的整个过程。
阅读(2044) | 评论(0) | 转发(0) |
0

上一篇:如何移植u-boot?

下一篇:没有了

给主人留下些什么吧!~~