关闭

mini2440 uboot使用--基于 tekkamanninja u-boot-2010.03

标签: 2010makefile编译器ubuntu虚拟机百度
3340人阅读 评论(1) 收藏 举报
分类:

第一次使用Uboot,浪费了很多时间,Uboot移植前的工作,我觉得首先还是要会用。

之前下了很多,下载后基本上是串口没反映,显示屏没图像。于是花了几天时间,静心的做了一遍,测试成功。

系统准备:按我博客上的    ubuntu10.10的 crosstool安装  这篇文章来安装交叉编译环境。


然后到 tekkamanninja的博客上下载  uboot-2010.03 地址是  http://blog.chinaunix.net/uid-20543672-id-94379.html


下载后放到 虚拟机下

在home/用户名/    的目录下

mkdir working

cd working

mkdir uboot

cd uboot

cp  /mnt/hgfs/forubuntu/uboot/tekkamanninja-u-boot-2010.03-tekkaman-052d395.tar.gz    ./

ls


可以看到tekkamanninja-u-boot-2010.03-tekkaman-052d395.tar.gz

然后解压


tar xvzf tekkamanninja-u-boot-2010.03-tekkaman-052d395.tar.gz


ls


看到tekkamanninja-u-boot-2010.03-tekkaman-052d395 文件夹


cd tekkamanninja-u-boot-2010.03-tekkaman-052d395


现在找下 mini2440 板级信息在哪个地方 find -name "mini2440" 

输出 ./board/tekkamanninja/mini2440

进入

cd board/tekkamanninja/mini2440/


这样看到了mini2440的Makefile 等文件


回到顶层看Makefile

cd ../../../../

vim Makefile


找到 CROSS_COMPILE =  arm-tekkaman-linux-gnueabi-

因为在交叉编译环境那篇文章中,我把arm的交叉编译器的名字定为 arm-linux-

所以这里要改成CROSS_COMPILE =  arm-linux-

保存退出


然后修改下mini2440.h

vim include/configs/mini2440.h



查找 CONFIG_BOOTARGS


#define CONFIG_BOOTARGS         "noinitrd root=/dev/nfs rw nfsroot=192.168.0.1:/home/tekkaman/working/nfs/rootfs ip=192.168.0.2:192.168.0.1::255.255.255.0 console=ttySAC0,115200 init=/linuxrc mem=64M"

把路劲和ip地址等设置对应自己的  

nfsroot=192.168.0.1:/home/tekkaman/working/nfs/rootfs 这个是 宿主机上,使用nfs启动的根文件。改成自己的。


ip=192.168.0.2:192.168.0.1::255.255.255.0 这三个ip分别是 开发板ip,宿主机ip,子网掩码。

其他不用改。


接下来看到:

#define CONFIG_ETHADDR          08:08:11:18:12:27
#define CONFIG_NETMASK          255.255.255.0
#define CONFIG_IPADDR           192.168.0.2
#define CONFIG_SERVERIP         192.168.0.1
#define CONFIG_GATEWAYIP        192.168.0.1

改成自己对应的,不然nfs下的根文件是肯定启动不了的。

#define CONFIG_BOOTCOMMAND      "nfs 0x30008000 192.168.0.1:/home/tekkaman/working/nfs/zImage.img;bootm"
这个是使用自动启动的时候使用,把路径改下就可以了。

保存退出


当然对于mini2440.h也可以不改,把uboot编译成功烧写到norflash后,启动uboot,用 setenv 和 saveevn命令来修改保存。


现在配置

make mini2440_config

输出Configuring for mini2440 board...表示成功


编译

make CROSS_COMPILE=arm-linux-

 这个地方可以用make  因为之前在 Makefile中修改了 CROSS_COMPILE.

输出这个

arm-linux-objcopy -O srec u-boot u-boot.srec
arm-linux-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin


表示成功


ls一下可以看到 uboot.bin


烧写UBOOT

之前用nor启动,选a,usb下载不能成功。

后来就用jlink进行下载。

具体方法在 百度文库有一篇文章可以查到。


烧写完成后,拔掉jlink,打开超级终端,启动,赶紧空格。

输入命令print

可以看到信息了。显示屏上面也应该有一个图片

到这里就可以开始使用uboot。

















0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:40366次
    • 积分:520
    • 等级:
    • 排名:千里之外
    • 原创:11篇
    • 转载:6篇
    • 译文:0篇
    • 评论:6条
    文章存档
    最新评论