u-boot在nuc972平台上的移植过程(启动篇)

写在前面

这个想法最初是来自于一个叫x_project的项目,关于它的介绍和主页可参见下面两个链接,

x_project介绍: http://www.wowotech.net/forum/viewtopic.php?id=2
x_project主页: http://www.wowotech.net/sort/x_project

这位技术牛人的博客有多可以学习的东西。

使用git和github

关于git和github的介绍网上有很多,按照x_project里面的介绍,创建github账号,克隆最新的u-boot主线。关于git下面链接的文档很值得一看:

https://git-scm.com/book/zh/v1/%E8%B5%B7%E6%AD%A5

移植编译过程中遇到的问题

基本上按照x_project中关于u-boot的移植过程的描述做,遇到编译问题兵来将挡水来土掩,这里列举几个:

  • 在板子config.h文件中不要使用//这样的注释,不然会被加到链接脚本里面导致链接报错;
  • 在前期没有串口输出调试的时候可以利用设置GPIO点灯调试;
  • 搞清楚u-boot在板子上的加载地址并和链接地址保持一致(CONFIG_SYS_TEXT_BASE);
  • 要使用较新的arm-gcc编译器。

现在的状态

相比x_project在移植过程中最大的有利条件就是有份能跑的u-boot版本,目前只是将它迁移到u-boot的最新版本,很多问题多可以到那份code里面去找到答案。

目前已经将串口输出和nand的支持成功的移植进去并跑起来了,可以参见我创建的github项目如下链接:

https://github.com/nuc97xx

你可以克隆它然后在build目录下执行make命令既可,这可能还需要你修改下build目录下makefile文件中指定的编译器路径,然后在板子上原有的u-boot里用tftp命令将编译生成的u-boot.bin加载到0x800000地址上如果跳转执行,完整的操作过程如下:

这里写图片描述

可以看到它成功的运行起来了,然后我们可以输入help命令试试。

后续

有了串口输出和nand驱动后最基本的条件就有了,后续还想继续来完善它将要做如下几个方面:

  • 移植添加网卡的支持
  • 移植添加lcd的支持
  • 添加读取nand上的图片文件并在lcd上加载显示作为boot logo的功能
  • 添加在u-boot时读取U盘文件进行系统的升级或网络升级
  • 等等我还没有想到的实用功能

一个人的精力总是有限的,可能它的进度会很慢又或者会因为某些原因而终止了,所以欢迎有精力和同样抱着学习态度的童鞋一起加入进来往上面提交你的代码。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值