开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,从本文章开始,内核编译也改用该交叉编译器)

摘要:上一节中,完成了u-boot-2011.03移植过程中相对较难和复杂的部分:移植NAND FLASH部分,使u-boot支持从NAND FLASH启动和读写,虽然可支持从NAND FLASH启动了,但u-boot还不能引导内核启动。

本节介绍u-boot-2011.03移植的最后一部分:u-boot引导启动nand flash中的内核和cramfs格式根文件系统以及用户文件系统yaffs2的支持,使u-boot具有一个正常的bootload功能。

此外,u-boot的后续工作根据个人需求进行添加,比如添加u-boot命令、相应设备的驱动、LED指示灯等。

阅读全文 »

 


开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,当然本人编译内核的时候还是用3.4.1版本)

摘要:在熟悉了使用JLINK间接烧写u-boot至FLASH的方法与步骤使用AXD和JLINK调试u-boot方法与步骤后,接下来就是移植u-boot-2011.03中最关键部分了:移植NAND FLASH部分,使u-boot支持从NAND FLASH启动和读写。本节内容比较多,修改的代码也比较多,特别还涉及到了ARM汇编,所以请保持耐心。

阅读全文 »

 


开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,当然本人编译内核的时候还是用3.4.1版本)

摘要:移植u-boot-2011.03的方法与步骤5中,介绍了使用JLINK间接烧写NAND FLASH的方法,保证了烧写我们移植的u-boot镜像到NAND FLASH后启动失败时有方法可恢复正常u-boot的启动。在这个保证前提下,详细介绍在移植和调试u-boot启动第一阶段代码,特别是NAND FLASH部分和NAND FLASH启动部分时,如何使用AXD和JLINK来调试u-boot的方法与步骤。

阅读全文 »

 


开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,当然本人编译内核的时候还是用3.4.1版本)。

摘要:前一篇,实现了u-boot最主要最重要功能——正确引导内核启动。接下来,是关于移植u-boot的NAND FLASH部分,使u-boot可正常地从NAND FLASH中启动。这一部分应该来说是移植u-boot的难点。

在移植u-boot的NAND FLASH部分特别是NAND FLASH启动u-boot部分时,始终是要把移植的u-boot烧写进NAND FLASH,验证u-boot能否从NAND FLASH中成功启动。在实际过程中,即使用AXD仿真调试没问题了,但并不代表就能一次成功,往往一条指令的不小心,就可能导致挂机,再也起不来了。现在电脑上都很少有并口了,而JLINK烧写FLASH功能强大,但烧写Nor Flash时需要设置SDRAM,否则速率很慢;烧写Nand Flash只是从理论上能够达到,但是还没有人直接实现这点。为了在挂机或验证自己移植的u-boot能否从FLASH启动时,能够方便把u-boot镜像烧写进FLASH,把网上介绍的关于使用JLINK间接烧写NAND FLASH的方法说明在这,同时增加了自己的使用心得和遇到问题的解决方法。 阅读全文 »

 


开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,当然本人编译内核的时候还是用3.4.1版本)。

摘要:上一篇中,移植和配置了CS8900A网卡芯片,使u-boot-2011.03的网络可以正常使用了,并可用tftp正常下载内核了。但在u-boot-2011.03命令行中,运行go或bootm命令启动下载到SDRAM中的内核时,在”Starting kernel …”地方死机了。因此,本文重点解决这个问题,使u-boot能正确引导内核。 阅读全文 »

 


开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,当然本人编译内核的时候还是用3.4.1版本)。

摘要:按照上一篇(方法与步骤2)的操作后,u-boot-2011.03可通过tftp下载到SDRAM中跑起来了,并可看到熟悉的启动信息。

由于后续的移植和调试很大程度上都依赖于网络,因此,在u-boot可以初步启动后,就得移植网卡驱动了,使网络可以用起来。utu2440-F板载的网卡是CS8900A。

在 S3C24XX系列中,u-boot默认对CS8900网卡进行配置使用,只是在个别地方要根据开发板的具体网卡片选进行设置,就可以对S3C24XX系列中CS8900网卡的支持使用。所以需要修改的地方不多。由于数据通过总线传送,所以要注意地址空间的配置和总线的配置。 阅读全文 »

 


开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,当然本人编译内核的时候还是用3.4.1版本)。

摘要:在上篇文章移植u-boot-2011.03到S3C2440(utu2440)方法与步骤###1. 配置和初步编译中介绍了如何配置和裁减u-boot-2.011.03,并通过了初步编译。在此基础上,本文通过修改reille2440.h文件、分析u-boot入口、修改start.S初始化代码段,利用tftp把编译出来的u-boot-2011.03镜像下载到SDRAM中,使其跑起来,可看到熟悉的u-boot启动信息。 阅读全文 »

 


摘要:在2011年的时候,本人把u-boot-2011.03成功移植到了S3C2440(utu2440开发板)上。通过这次移植使自己对u-boot有了较深刻的理解并掌握了u-boot的移植。

对于未移植过u-boot的人来说,可能觉得很神秘,甚至觉得很难。实际上,从整个移植过程来看,并未想像中那么难。如果你接触过嵌入式linux的开发,我觉得移植u-boot并不是难事,至少没想象中的难。

reille博客作为技术分享、技术交流的个人博客,把自己移植u-boot-2011.03的过程、遇到的问题及解决方法作为一个系列专题分享出来。希望对正在移植u-boot的人有用。

本节主要介绍u-boot-2011.03的配置和初步编译。

开发环境:主机:Window XP SP2;linux:VMware7.01+ubuntu9.10;目标板:扬创utu2440-F开发板

交叉编译器:arm-linux-gcc4.3.2(一开始用的是编译内核的版本arm-linux-gcc3.4.1,但出现了软浮点问题,于是换成了现在用的版本,当然本人编译内核的时候还是用3.4.1版本)。 阅读全文 »

© 2012 velep.com | reille blog | 管理| 粤ICP备15065318号-2| 谷歌地图| 百度地图| Suffusion theme|Sayontan Sinha

无觅相关文章插件,快速提升流量