linux驱动模板
- 最基本
#include <linux/module.h> // 需要测试是否还需要其他头文件
static int __init led_init(void) {
}
static void __exit led_exit(void) {
}
module_init(led_init); // 驱动初始化
module_exit(led_exit); // 驱动退出
MODULE_LICENSE("GPL"); // 协议
MODULE_AUTHOR("zuozhongkai"); // 作者
Maefile脚本
KERNELDIR := /home/khd/linux/IMX6ULL/linux/alientek_linux # 内核源码目录
CURRENT_PATH := $(shell pwd) # 当前目录
obj-m := gpioled.o # 驱动用到的目标文件
build: kernel_modules
kernel_modules:
$(MAKE) -C $(KERNELDIR) M=$(CURRENT_PATH) modules
clean:
$(MAKE) -C $(KERNELDIR) M=$(CURRENT_PATH) clean
2. 两种设备