TQ2440 U-Boot 1.1.6移植指南:添加NAND与DM9000支持

5星 · 超过95%的资源 需积分: 9 72 下载量 30 浏览量 更新于2024-08-01 1 收藏 279KB PDF 举报
本文档详细介绍了在ARM9架构的TQ2440开发板上进行U-boot 1.1.6版本的移植过程,作者唐智浩于2009年12月编写。移植过程中,作者面临的主要挑战是由于天嵌公司未提供官方移植文档,因此需要依赖U-boot源代码和网络资源进行学习和实践。 移植背景表明,移植工作是在缺乏官方指导的情况下进行的,目的是为了适应TQ2440板子,这需要开发者具备一定的硬件理解能力和对U-boot的深入理解。移植环境包括使用crosstools_3.4.5_softfloat交叉编译器,针对的CPU是S3C2440,配备有256MB的SDRAM(16MBx16bit)和两种存储设备:EN29LV160A 2048KB的NorFlash以及256MB的NANDFlash Memory。此外,文档还提及了板载的DM9000网卡。 在移植源代码部分,作者选择了U-boot-1.1.6作为基础,可以从SourceForge获取。在实际操作中,作者对源码进行了裁剪,主要删除了与S3C2440不直接相关的其他目标板文件、CPU目录、库文件以及非ARM相关配置头文件,以便于更好地适应TQ2440的需求。 核心步骤包括建立自定义的目标板配置,通过复制并修改SMDK2410的相关文件,如TANG2440.c和Makefile,将编译对象添加为TANG2440.oflash.o,从而确保编译后的U-boot能够正确识别和处理TQ2440的硬件特性。 具体到移植内容,文档涉及到了以下几个关键点: 1. **S3C2440支持**:文档强调了对S3C2440处理器的支持,这是移植的核心,因为所有硬件配置和驱动都需要与之兼容。 2. **NorFlash和NANDFlash驱动**:增加了对NorFlash的配置和对NANDFlash读写功能的驱动,这使得U-boot可以在这两种常见闪存类型上运行,提升了系统的灵活性。 3. **DM9000网卡支持**:文档提到的DM9000驱动,表明U-boot能够管理和配置板载的网络接口,这对于嵌入式系统通信至关重要。 4. **启动方式**:支持两种启动方式——NANDFlash和NorFlash,这取决于硬件配置,为用户提供不同的部署选项。 5. **Linux内核引导**:U-boot成功移植后,它还需要引导Linux内核,这涉及到加载和初始化内核的过程,是整个系统启动流程的关键环节。 6. **文件系统支持**:文档提到了对Yaff2文件系统的支持,这意味着U-boot可以与该文件系统协同工作,管理文件存储。 总结来说,这份文档是一份实用的移植指南,不仅记录了技术细节,还有助于其他开发者理解和遵循类似过程,实现他们在TQ2440板子上的U-boot定制。