本篇文档是《YS2440-EK开发板Linux系统u-boot移植手册》V1.0,发布于2010年9月27日,由中国电子开发网制作,主要针对YS2440-EK开发板进行U-Boot移植。该手册详细介绍了如何在特定环境下进行移植,旨在帮助嵌入式系统初学者快速理解和实践U-Boot的移植过程。
首先,移植环境设置至关重要,推荐使用Vmware虚拟机(版本6.5或7.11),其中运行Ubuntu 8.04或10.04操作系统,并配置TFTP服务器。实际硬件平台是YS2440开发板,配备128MB的三星K9F1GU08A NandFlash,每页大小为2KB。
核心步骤包括:
1. **修改CPU/ARM920T/START.S文件**:为了让U-BOOT支持从NANDFLASH启动,需要对这个关键启动文件进行调整,确保它能识别和处理NAND设备的引导加载。
2. **添加NAND_FLASH读取函数**:在BOARD/CEDN/SMDK2440目录下,引入NAND_READ_LL函数相关的NAND_READ.C文件,以支持NAND设备的数据读取操作。
3. **低级别初始化**:在LOWLEVEL_INIT.S文件中做相应的修改,以配合新的硬件配置和NAND操作。
4. **修改配置头文件**:在INCLUDE/CONFIGS/SMDK2440.H中,增加或调整必要的配置,让U-Boot知道如何正确配置S3C2440处理器和NAND驱动。
5. **驱动程序的修改**:重点是修改DRIVERS/MTD/NAND/S3C2410_NAND.C文件,以适应SMDK2440的NAND驱动需求,以及COMMON/CMD_NAND.C文件,确保命令行支持NAND操作。
6. **编译选项配置**:添加CONFIG_S3C2440编译选项,以使这些更改被包含在最终的U-Boot编译中。
最后,整个移植过程涉及了源代码的深度理解与调整,不仅需要基本的Linux环境配置和交叉编译器(如arm-linux-gcc-4.3.2),还需要对U-Boot的内核架构和硬件驱动有一定了解。这份手册提供了一个实用的指导,对于希望在嵌入式开发领域深入学习U-Boot的工程师来说,是一份宝贵的参考资料。