基于dm2410开发板的linux移植工作继续(2)

我现在用的工具链是这样的

HOST:Ubuntu 12.04,系统默认自带的gcc版本是4.6.3,经过强烈的折腾,发现跟较老版本的工具链配合不良好,于是采用友善之臂mini2440的整套工具,

mini2440的gcc4.4.3版本既可以编译内核又可以编译busybox,用起来很方便。

target: Linux-2.6.32.2

文件系统:busybox-1.13.3

用串口烧写内核和文件系统很慢很慢,于是开始看bootloader的东西,先看了下vivi,可是原版的vivi也是只能用串口的,而且官方已经没有更新了,而mini2440的supervivi功能虽然全,但是不支持我的dm2410开发板,而且是不开源的。

所以,还是用uboot了,uboot是开源的。

我用的是ouravr论坛上的这个帖子上的版本, http://www.amobbs.com/thread-3228953-1-1.html ,暂时直接拿来用了,虽然暂时不支持我的cs8900网卡,但是USB下载,DNW工具可以用,这样子,烧写就快多了。

下载内核和文件系统之前要对nandflash进行分区,内核和uboot里面的env两边都要修改,大小要内容得下内核。

文件系统下到flash中间运行,速度要快很多了。网络也很好用了,不知道为什么,用nfs文件系统的时候,网络丢包很厉害,而现在就没什么丢包,不知道是网卡驱动有问题呢,还是我之前弄的文件系统太大,还是对nfs支持的问题?

接着开始研究内核驱动了,从点亮led开始。

应用程序要运行的时候需要一些动态链接库,可以用arm-linux-readelf 命令查看,把相关的库放到目标板文件系统的/lib目录下。

用insmod命令加载驱动,有时候报错,是因为编译驱动模块之前,要先完成内核的编译,否则模块没有内核版本信息。

看,经过今天下午的努力,LCD的驱动已经移植好了,下面是开机效果图哦

posted @ 2012-10-20 14:56  欢乐小飞  阅读(285)  评论(0编辑  收藏  举报