http://www.embedu.org/Column/Column416.htm
1. 在drives目录下添加hello目录,内含hello.c Makefile
hello.c:
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT"Hello, world\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT"Goodbye, world\n");
}
module_init(hello_init);
module_exit(hello_exit);
Makefile:
obj-y += hello.o //直接编译到内核中
或者
obj-m += hello.o //编译成内核模块,可以通过insmod/rmmod 动态加载/卸载。
2. 修改driver目录Makefile
添加 obj-y +=hello/ 到/kernel/kernel/drivers/Makefile