首页 > 其他 > 详细

将字符设备驱动代码添加到内核源码树

时间:2021-09-04 01:03:25      阅读:32      评论:0      收藏:0      [点我收藏+]

一、因为我们编写的是一个字符设备驱动,所以将其放在./driver/char字符设备驱动目录

cp -rfa ../../kernel/helloDev/helloDev.c ./

二、修改./char目录下的Kconfig文件

技术分享图片

tristate标签: 表示在执行make menuconfig的时候,可以选择 Y、N、M 三态编译,配置为bool标签时只能选择 Y、N
default标签: 表示默认选择时Y
help标签: 表示帮助信息

最终名称为: CONFIG_HELLO

三、修改./driver/char 目录下的Makefile文件

增加编译项(注意名称为CONFIG_HELLO,来源于上一步配置的Kconfig文件)
技术分享图片

四、回到内核文件根目录下

cd /home/yu/kernelwork/linux-4.9.229

五、静态加载 (编译到内核中)

1、执行 make menuconfig

make menuconfig

2、在> Device Drivers > Character devices 层级目录下,可以看到我们添加的选项,选择<*>,即静态加载,会随着系统的启动而加载

技术分享图片

3、重新编译内核
export ARCH=x86
make x86_64_defconfig
make
4、查看编译打印信息

技术分享图片

六、动态加载 (编译为驱动)

1、执行 make menuconfig

make menuconfig

2、在> Device Drivers > Character devices 层级目录下,可以看到我们添加的选项,选择<M>,即动态加载,需要自行手动insmod和rmmod

技术分享图片

3、重新编译内核

make

4、查看编译日志

可以看到编译成了 helloDev.ko 驱动文件
技术分享图片

将字符设备驱动代码添加到内核源码树

原文:https://www.cnblogs.com/yuersan/p/15221419.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!