文章目录
1增加驱动文件和对应的Makefile KConfig
kernel/drivers 里面添加一个文件夹 hello;里面有hello.c Makefile Kconfig
hello.c内容
#include <linux/kernel.h>
#include <linux/init.t>
#include <linux/module.h>
#include <linux/delay.h>
static int __init hello_init(void)
{
printk("---------hello--------\n");
return 0;
}
static void __exit hello_exit(void)
{
printk("Exit hello word\n");
}
subsys_initcall(hello_init);
module_exit(hello_exit);
MODULE_AUTHOR("gaox <123456789@qq.com>");
MODULE_DESCRIPTION("Firefly hello driver");
MOUDLE_LICENSE("GPL");
同级目录Kconfig 内容
config HELLO
tristate "HELLO word for Firely"
help
Hello for firefly
同级目录Makefile 内容
# LED Core
obj-$(CONFIG_HELLO) += hello.o
2修改上一级的Makefile 与 KConfig
在kernel 目录下的Kconfig 最后加上
source "drivers/hello/Kconfig"
在kernel 目录下的Makefile最后加上
obj-y += hello
3使用 make menuconfig进行配置、
在kernel中的 make menuconfig中打开本模块编译进内核
4利用本模板过程测试I2c
在Device Drivers 里面打开编译选项
要把.config中的内容覆盖到