基于NFS的嵌入式linux设备驱动程序开发环境搭建
作者:admin 来源:未知
1、软硬件平台
PC机Windows XP的IP:192.168.1.225,子网掩码:255.255.255.0,默认网关:192.168.1.1;
PC机上虚拟机Vmware中linux版本:Red Hat Enterprise 5.1,IP:192.168.1.226,子网掩码:255.255.255.0,默认网关:192.168.1.1;
开发板型号:micro2440,IP:192.168.1.230,子网掩码:255.255.255.0,默认网关:192.168.1.1。
在PC机上的Windows XP系统与Vmware中的linux系统之间可以通过Samba服务器进行通信,此处不再详述。Vmware中的linux系统通过NFS服务挂载目标板,在PC机上就可以进行目标板的设备驱动程序的开发。
2、通过NFS启动系统
按照用户手册配置好NFS服务,启动NFS服务。
设置micro2440开发板的启动模式为NAND Flash启动,连接好电源线、串口线和网线,
打开串口终端,在开机或者复位的时候按下开发板上K1-K6任意按键,然后输入q,这样就进入了vivi模式,输入以下命令:param set linux_cmd_line "console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.226:/opt/FriendlyARM/micro2440/root_qtopia ip=192.168.1.230:192.168.1.226:192.168.1.1:255.255.255.0:micro2440.arm9.net:eth0:off"。如下图所示:
输入boot,按下回车就可以从NFS启动目标板系统了。
3、linux设备驱动程序开发环境搭建
下面以一个“hello world”驱动作为示例,介绍驱动程序开发流程。hello.c代码如下所示:
#include <linux/init.h>
|
一个简单的Makefile文件如下所示:
KERNELDIR = /home/david/kernel/linux-2.6.32.2
|
其中home/david/kernel/linux-2.6.32.2为内核代码所在的目录,/opt/FriendlyARM/micro2440/root_qtopia/为NFS挂载目标板的目录,按照用户手册说明,将生成的内核模块文件/lib/modules/2.6.32.2-FriendlyARM目录下。
最后使用命令make modules和make modules_install就可以编译和安装内核模块了~
开发板上的操作如下所示:
开发板上的操作如下所示:
|