Blackfin平台UBOOT移植步骤与问题解决

需积分: 9 6 下载量 147 浏览量 更新于2024-10-07 收藏 61KB DOC 举报
"这篇文档是关于在Blackfin处理器上移植UBOOT(统一的bootloader)的详细记录,主要内容包括源代码获取、移植方法、配置文件修改以及遇到的问题和调试过程。" 在嵌入式系统中,UBOOT是一个广泛应用的开源引导加载程序,用于初始化硬件并加载操作系统。对于Blackfin处理器,移植UBOOT是将其适配到特定开发板的关键步骤。在本文档中,作者详细描述了移植UBOOT到Blackfin平台的过程。 首先,UBOOT的源代码版本为u-boot-bf548-ezkit-2009R1.1-rc1,这是针对BF548 EZ-KIT Lite开发板的。为了适应新的bf548-test开发板,作者在/u-board目录下创建了一个新目录,并基于bf548-ezkit目录进行复制和重命名。然后,修改了board目录下的C源文件bf548-ezkit.c,将其改为bf548-test.c。接下来,对顶层的Makefile进行了相应修改,将bf548-ezkit替换为bf548-test,确保编译时能识别新的开发板。 在配置文件方面,作者在/u-boot-bf548-ezkit-2009R1.1-rc1/include/configs/路径下,以bf548-ezkit.h为模板创建了bf548-zsl.h,用于存储新开发板的配置信息。通过执行`make bf548-zsl_config`命令,可以生成针对新开发板的配置,并进行编译验证。 针对硬件差异,文章指出,本板卡的NOR FLASH型号为MT46V32M16F,它支持CFI接口。由于UBOOT已经内置了对这种类型FLASH的支持,所以只需在配置文件中调整扇区数,这里是将扇区数改为135。完成修改后,通过`make distclean`清除旧的构建文件,然后再次运行`make bf548-zsl_config`和`make`命令,重新编译生成u-boot.ldr。 然而,在烧录到开发板后,发现串口没有打印信息,这意味着移植可能存在问题。解决此类问题通常需要检查硬件连接、串口设置和烧录过程,以确认数据是否正确写入Flash,并能被正确读取。 这个移植记录提供了从源代码获取、目录结构修改、配置文件定制到问题排查的全面步骤,对于理解和实践在Blackfin平台上移植UBOOT具有很高的参考价值。不过,文档未提供问题的具体解决方案,实际操作中可能需要进一步的调试和硬件验证。