欢迎来到天天文库
浏览记录
ID:33289881
大小:179.00 KB
页数:20页
时间:2019-02-23
《linux系统移植实验手册》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验四Linux-2.6.14内核移植--网卡驱动的添加【实验目的】本实验通过在上个实验结果的linux2.6.14内核上移植CS89900A网卡驱动,使其可以通过网络nfs的方式挂载在ubantu主机环境上的文件系统,从而实现linux系统的完全启动。【实验环境】1、Ubuntu7.0.4发行版2、GEC2410平台以及开发板中移植好的u-boot3、交叉编译器arm-linux-gcc【实验步骤】(1)下载linux内核http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.14.1.tar
2、.bz2,下载linux2.6.14内核致/source/kernel目录,如果没有/source/kernel目录,自行建立目录。root@:/source/kernel#cd/source/kernel/root@:/source/kernel#tar-xjvflinux-2.6.14.tar.bz2root@:/source/kernel/linux-2.6.14#pwd/source/kernel/linux-2.6.14root@:/source/kernel#cdlinux-2.6.14进入内核解压后的目录,以后示例中,只要是相对路径
3、全部是相对于/source/kernel/linux-2.6.14这个目录。(2)修改Makefile文件修改内核目录树根下的的Makefile,指明交叉编译器:root@:/source/kernel/linux-2.6.14#vimMakefile找到ARCH和CROSS_COMPILE,修改ARCH=armCROSS_COMPILE=arm-softfloat-linux-gnu-保存退出,然后设置你的PATH环境变量,使其可以找到你的交叉编译工具链:root@:/source/kernel/linux-2.6.14#echo$PATH:/
4、usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games如果第一个路径为/home/linux/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu/bin,则不用再进行设置,如果不是则进行下面步骤进行设置:root@:/source/kernel/linux-2.6.14#exportPATH=$PATH:/home/linux/crosstool/gcc-3.4.5-glibc-2.3.6/arm-so
5、ftfloat-linux-gnu/bin:(动态加载环境变量,终端关闭后,自己所加载的环境变量立即消失)。或者修改./bashrc文件:(静态加载环境变量,不随终端的关闭而消失)root@:/source/kernel/linux-2.6.14#vim~/.bashrc在文件最后添加19exportPATH=$PATH:/home/linux/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu/bin:再重新登陆:root@:/source/kernel/linux-2.6.14#su
6、–下面的所有操作都在上个实验结果的linux2.6.14内核源码目录中,可以参考前面的实验。(3)添加网卡驱动到内核将cs8900a.h和cs8900a.c文件拷贝到内核代码目录drivers/net中:linux@:/source/kernel/linux-2.6.14$cp/mnt/hgfs/disk/cs8900a.*drivers/net(4)修改Makefile和Kconfig文件linux@:/source/kernel/linux-2.6.14-$vimdrivers/net/Makefile在文件中添加:obj-$(CONFIG_
7、CS8900a)+=cs8900a.o(5)保存退出,修改Kconfig文件linux@:/source/kernel/linux-2.6.14-$vimdrivers/net/Kconfig在以下代码段下面configDM9000tristate"DM9000support"dependsonARM&&NET_ETHERNETselectCRC32selectMII---help---SupportforDM9000chipset.Tocompilethisdriverasamodule,chooseMhereandread8、mentation/networking/net-modules.txt>.Themodulewillbecalleddm9000.加入
8、mentation/networking/net-modules.txt>.Themodulewillbecalleddm9000.加入
此文档下载收益归作者所有