linux驱动学习-----添加加一个模块hello

参考各个网站的教程编写一个HELLO MODULE,添加到menuconfig中。
主要是两个文件:Makefile和Kconfig。
首先进入驱动中lichee/linux-3.4/drivers/char/
这里面有很多c文件和文件夹,然后有一个Makefile和Kconfig。
先创建一个c文件,名字就叫hello.c。代码如下

#include <linux/kernel.h>
#include <linux/module.h>
static int __init mini2440_hello_module_init(void)
{
printk("Hello, world !\n");
return 0;
}
static void __exit mini2440_hello_module_cleanup(void)
{
printk("Good-bye!\n");
}
module_init(mini2440_hello_module_init);
module_exit(mini2440_hello_module_cleanup);
MODULE_LICENSE("GPL");

然后修改Kconfig如图,添加这段代码。
这里写图片描述
这里主要是用config 定义一个变量,说明有一个这个模块。depend on指的是只有当ARM被有的时候,这个才显示。

然后修改Makefile,这个文件是用来通过config文件中的变量,判断相关的文件知否被编译生成一个KO文件。在makefile中添加下面一句。

这里写图片描述

注意这里的CONFIG_后面的字符一定要和Kconfig中定义的一致,要不会出错。

然后打开make menucofig,这里注意要在linux.xxxx目录下执行makemenucofig才行,如果直接make kernel_config会找不到我们添加的东西。
进入Device driver–>charactor driver–>
可以找到我们建的模块:
这里写图片描述

然后在linux的目录下生成.ko文件,直接将其拷入开发板insmod就可以啦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值