很久以前买了块开发板,是Armzone的QT2410。板上带的bootloader是vivi,这是一个小巧的bootloader,但是你很会很痛苦地发现你要通过串口这样原始的工具去下载程序,速度慢得让人发疯!我刚买到这块板子的时候就曾经用串口烧过一个要文件系统,结果我等得睡着了,也不知用了多久才烧完!真傻!后来用ztelnet快了点,但前提是你要用一个可用linux系统在你的板子上。趁最近有点时间弄个u-boot上去吧!
先介绍一下我的开发环境.1、操作系统:Fedora 8安装在windows xp的虚拟机上。(唉,中微软的毒太深了!有很多东西就是改不过来)2、交叉环境是eldk4.1(我习惯用这个,感觉还可以。但后面发生一些事也许证明我错了!)3、板子是Armzone的QT2410(cpu是三星的s3c2410,sdram:HY57V561620 2*32M,NAND:K9F1208U0M,网卡:cs8900a)
移值的第一步是找一个类似的板子。QT2410的板子是根据SMDK2410做的吧?它跟smdk2410有90%的相似!很幸运也很不幸,只有90%。好吧,就用SMDK2410作为基础来移值吧!
Step 1.在根目录Makefile里添加编译入口。找到这两行:
smdk2410_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0
复制,然后在后面粘贴并把它改为下面这样子
qt2410_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t qt2410 NULL s3c24x0
红色部分是更改点,你可以改为任何字符,它只是一个名字而已。注意:第二行的前面是个tab,不然编译是出错的。
Step 2.
(1)在$uboot/boards目录里找到smdk2410子目录,把它复制,然后命名为qt2410.($uboot表示uboot源代码的根目录,以下同)
(2)$uboot/boads/qt2410/smdk2410.c文件重命名为qt2410.c
(3)$uboot/boads/qt2410/Makefile 把smdk2410.o 改为qt2410.o
Step 3.
$uboot/include/configs/smdk2410.h文件复制为qt2410.h
现在,我们已经完整clone了一个SMDK2410板子的uboot了。当然也可以直接改smdk2410,不过我习惯了尽量减少付作用。这样你也不会因为你的不小心更改了别人正确的代码!
试着编译一下:
1.make distclean (保证所有文件都是最新修改的,如果你想快一点的话可以省去这一步)
2.make qt2410_config (配置你的板子)
3.make (生成所有)
如果你正确配置了编译环境,应该是可以成功的!一大堆E文飘过之后,你可以在$uboot里找到u-boot.bin这个文件。它就是最原始的一个u-boot版本了。
未完待续......
阅读(1029) | 评论(0) | 转发(0) |