首先感谢tekkamanninja分享的源码:https://github.com/tekkamanninja/u-boot-2010.03-tekkaman,也可以参考友善之臂的移植手册。
由于本学期主要学习exyson 4412,对mini2440了解比较少,通过查看数据手册,移植手册,并分析源码,学习了uboot的工作原理,启动过程。
下面就说一下我遇到的问题,及其解决方法。
移植uboot必要准备,开发板为友善之臂的MINI2440,内核为友善之臂提供的linux-2.6.32.2,根文件系统为友善之臂提供的rootfs_qtopia_qt4.img。
1.安装linux系统,可以选择虚拟机,或在物理机上直接安装,我使用的是直接在物理机上安装的 ubuntu 16.04。
2.搭建交叉编译平台,操作需要root权限,ubuntu 64位的系统需要安装32位运行库,我使用的是4.3.2版本的arm-linux-gcc。
(1)下载4.3.2的编译器,可以去友善之臂官网下载http://arm9download.cncncn.com/mini2440/linux/arm-linux-gcc-4.3.2.tgz
(2)解压 sudo tar -xzvf arm-linux-gcc.tar.gz
(3)使用sudo cp -r ./ /usr/local/arm 把解压包拷贝到 /usr/local/arm。
(4)打开配置文件 sudo gedit /etc/bash.bashrc
添加环境变量 export PATH=/usr/local/arm/4.3.2/bin$PATH
保存并退出。
(5)使新配置的环境变量生效
source /etc/bash.bashrc
(6)查看环境变量是否配置成功
echo $PATH
如果出现刚才配置的路径则成功。
(7)查看是否安装成功
arm-gcc-linux -v
如果成功将打印版本信息。
3.安装串口工具kermit
(1)安装kermit
sudo apt-get install ckermit
(2)配置kermit
suso gedit /etc/kermit/kermrc
在文件的最后添加配置信息
- set line /dev/ttyUSB0
- set speed 115200