S3C2440 U-Boot 2010.06 移植指南

5星 · 超过95%的资源 需积分: 9 5 下载量 81 浏览量 更新于2024-07-23 收藏 1.59MB DOCX 举报
"s3c2440-uboot2010.06 移植手册" 本文档是关于如何将u-boot 2010.06版本移植到基于S3C2440处理器的开发板上的详细指南。S3C2440是一款流行的ARM920T处理器,广泛用于嵌入式系统。该移植手册适用于使用Ubuntu 13.10作为开发环境,采用arm-linux-gcc4.3.2作为交叉编译器的开发者。开发板配备有NOR FLASH (EN29LV160BB-70TIP)、NAND FLASH (K9F2G08U0B)、SDRAM (H57V2562GTR-75Cx2)、DM9000E网卡和AT070TN90 TFT LCD显示器。 移植u-boot通常分为以下几个步骤: 1. **准备工作**: - 首先,从指定链接下载源码并解压:`tar xjvf u-boot-2010.06.tar.bz2` - 接着,使用`chmod`命令赋予源码目录及其所有子目录完全访问权限:`sudo chmod 777 u-boot-2010.06 -R` - 进入源码目录:`cd u-boot-2010.06` 2. **了解源码结构**: - `arch`目录包含针对不同架构的CPU相关文件,其中`arch/arm/cpu`包含了ARM920T/S3C24XX的初始化文件。 - `arch/arm/include`存放ARM架构的各种CPU相关头文件,特别关注`asm/arch-s3c24x0`。 - `arch/arm/lib`包含ARM架构的库文件。 - `board`目录有常用主板的BSP文件,每个特定板子对应一个目录,例如`smdk2410`。 - `common`存储架构无关的通用函数和命令实现。 - `drivers`包含通用设备驱动程序。 - `fs`是文件系统实现,包括yaffs2、cramfs、ext2、jffs2等。 - `include`包含全局头文件和主板配置文件。 - `lib`是平台无关的通用库文件。 - `net`涉及网络协议相关代码。 - `post`为开机自检代码。 3. **配置u-boot**: - 使用`make menuconfig`配置u-boot,选择适合S3C2440的配置选项,例如内存大小、闪存类型、网络设备等。 4. **编译u-boot**: - 执行`make`命令以生成目标文件,这将使用交叉编译器arm-linux-gcc4.3.2进行编译。 5. **烧录u-boot到开发板**: - 使用JTAG或串口工具将编译后的u-boot二进制文件烧录到开发板的NOR或NAND Flash中。 6. **调试与测试**: - 开发板上电后,u-boot应能成功启动并显示其欢迎信息。 - 测试u-boot的基本功能,如打印内存信息、挂载设备、网络通信等。 7. **优化与扩展**: - 根据需求添加或修改u-boot命令,支持更多硬件或优化性能。 - 可能需要调整脚本Makefile以适应特定的构建流程。 8. **文档编写**: - 文档记录移植过程,便于后续维护和他人参考。 这个移植手册是基于XC2440和TX2440移植手册的,同时也结合了作者的实践经验和其他参考资料,以深入解释移植步骤背后的原因。对于使用友善科技(FriendlyARM)或其他使用相同硬件平台的开发者,这份手册同样具有指导意义。如果遇到与EN29LV160BB-70TIP NOR Flash不兼容的问题,可以参考友善科技的移植手册或其他相关资料来解决。