移植教程:Ubuntu环境下配置与编译U-Boot-1.3.1 for FS2410

5星 · 超过95%的资源 需积分: 50 120 下载量 118 浏览量 更新于2023-03-03 3 收藏 2.68MB PDF 举报
"U-Boot移植实验手册及技术文档" 本文档主要介绍了如何移植U-Boot-1.3.1到FS2410平台的详细步骤,旨在帮助读者理解U-Boot的代码结构并掌握移植方法。实验环境包括Ubuntu 7.0.4操作系统、u-boot-1.3.1源码、FS2410开发板以及arm-softfloat-linux-gnu-gcc-3.4.5交叉编译器。 实验分为两个主要部分: 1. 建立自己的平台类型 - 解压缩u-boot-1.3.1源码包。 - 进入源码目录,复制并重命名SMDK2410为FS2410,创建对应的目录和文件。 - 修改Makefile,定义新的配置选项fs2410_config,指定CPU架构、类型、开发板型号、供应商和片上系统。 - 编译生成fs2410_config,然后执行`make`,生成u-boot.bin,但此时的U-Boot还不适用于FS2410。 2. 修改代码以适应FS2410 - 在cpu/arm920t/start.S中修改中断禁止部分,根据S3C2410手册调整中断设置。 - 修改时钟设置,这需要针对具体平台进行。 - 改变启动方式,从Nor Flash改为从NAND Flash启动,涉及NAND Flash的相关寄存器配置和命令执行。 - 添加读取NAND Flash的操作,创建board/fs2410/nand_read.c文件,实现低级别NAND读取函数nand_read_ll。 移植过程中,需要对U-Boot的代码结构有深入了解,尤其是与硬件平台相关的部分,如CPU的特性、中断处理、内存映射以及存储设备的初始化。通过这次实验,读者可以学习到如何根据目标硬件修改U-Boot源码,以适应不同的嵌入式系统需求。 实验结束后,移植后的U-Boot将能够正确识别和初始化FS2410平台的硬件资源,从而从NAND Flash启动并执行后续的引导流程。这个过程对于嵌入式系统的开发和调试至关重要,因为它确保了软件与硬件之间的兼容性,使得系统能够顺利运行。