从官方源码移植u-boot到九鼎X210开发板的详细步骤

需积分: 13 6 下载量 24 浏览量 更新于2024-07-16 收藏 3.79MB PDF 举报
"该文档是关于如何将官方的u-boot 2013.10版本移植到九鼎X210开发板的教程,详细介绍了移植步骤、配置过程以及遇到的问题与解决方法。" 在进行u-boot移植时,通常会从SoC厂商提供的版本开始,但此文档以官方源码为基础,旨在教学。移植过程首先涉及到的是配置阶段,通过运行`make s5p_goni_config`命令来执行`mkconfig`脚本,该脚本用于生成特定平台(如s5p_goni)的配置。`include/config.h`文件会被更新以适应目标硬件。在编译前,需要在顶层`Makefile`中设置交叉编译工具链。之后,执行`make`命令即可生成`u-boot.bin`文件。 对于官方u-boot的烧录问题,由于缺乏专用的Windows烧录工具,文档建议利用Linux环境,将先前移植好的`sd_fusing.sh`脚本用于烧录过程。将`sd_fusing`文件夹复制到当前u-boot目录下,按照脚本指示进行烧写。 在遇到问题时,文档提到了一种定位问题的方法:比较成功和失败的镜像文件内容,例如通过WinHex工具查看16字节头信息的差异。在CPU初始化过程中,若发现`Cpu_init_cp15`禁用了MMU,表明u-boot未使用虚拟地址映射,而是直接使用物理地址。在`cup_init_crit`函数中,只有一个跳转指令调用`lowlevel_init`函数,而项目中存在两个不同目录下的`lowlevel_init`函数,选择哪一个取决于具体实现。可以通过分析Makefile或检查编译后的`.o`文件来确定实际使用的`lowlevel_init`函数。 此外,文档还提到通过LED灯的状态来辅助调试,比如定义`DPJ0CON0xE0200240`和`DPJ0DAT0`这样的宏,用以控制LED的亮灭,从而根据设备的行为来定位问题。 总结来说,这篇文档详细介绍了u-boot移植的过程,包括配置、编译、烧录及问题排查,特别强调了如何处理官方u-boot在特定开发板上的适配问题,提供了实用的调试技巧。这对于想要学习和实践u-boot移植的开发者来说是一份宝贵的资源。