电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

嵌入式开发-2内核驱动模块编译

嵌入式开发-2内核驱动模块编译_第1页
1/1
驱动模块编译。如何编译开发板上驱动程序模块? 1、根据开发板硬件配置编写驱动程序。2、编译 2.6 版本的驱动模块需要把驱动代码加入内核代码树,并做相应的配置。配置步骤如下: (1)、将字符设备的驱动程序源代码文件拷贝到/drivers/char (2 )、编辑配置文件 Kconfig,加入驱动选项,使之在 make menuconfig 的时候出现。在 make menuconfig 图形界面配置中 driver 下的 char 中出现对应的配置选项,将其选择为模块编译方式。 例如:加入最简单 hello 模块时候在 Kconfig 中加入如下代码: Config TE6410__HELLO_MODULE //该项在 Makefile 文件中使用,是Makefile和make menuconfig 配置之间的桥梁作用 Tristate “TE6410 hellow module ” Help Hello module sample 保存退出 Kconfig 文件。 (3)、运行 make menuconfig,选择其中 hello 模块为模块编译方式。 3、通过上一步,虽然可以在配置内核的时候进行选择,但实际上此时执行编译内核还是不把 hello.c 编译进去或者编译为模块方式,还需要在Makefile 中 把 内 核 配 置 选 项 和 真 正 的 代 码 联 系 起 来 , 打 开 linux-xxxxxxxx/drivers/char/Makefile,添加如下内容并保存退出, Obj -$(CONFIG_TE6410_HELLO_MODULE) +=hello.o (文件名和驱动代码源文件名相同)。 4、此时配置完毕,接下来就是编译内核模块,不需要编译整个内核源文件,只需要编译模块就可以。用以下命令指定编译模块。(以下命令运行是在源码的根目录下执行其中 Makefile 文件)。 make modules SUBDIRS=driver/char 编译完成以后在/driver/char 目录下会生成 hello.ko 的驱动程序文件。 5、将该程序拷贝或下载到开发板上用 insmod hello.ko 加载到开发板操作系统中,查看程序的运行结果。或者用 nfs 将主机的目录挂载到开发板上,然后加载驱动并测试 .总结与思考:如何将 hello.c 静态编译进内核?如何利用 Makefile 文件交叉编一个驱动模块?

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

嵌入式开发-2内核驱动模块编译

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部