转载请注明出处:http://blog.csdn.net/lihaoweiV 李浩炜的CSDN博客
三星 SMDKC210 开发板上 简单的LED驱动
步骤:
1. 因为LED灯的亮和灭是受GPIO控制的, 从SMDKC210板的schematics图中查出,LED4 对应的GPIO端口是 GPX1_4,这个详细可以看我另一篇LED驱动的文章《I/O Ports中的GPFCON和GPFDAT寄存器》
2. 添加必要的头文件
3. 实现模块的框架,比如init, exit, LICENSE等
4. 写led_on, led_off函数
4.1 申请GPX1_4端口
4.2 将GPX1CON[4] 设为OUTPUT, 以上两步这里用一个函数gpio_request_one完成
4.3 将GPX1DAT[4] 设为 0 (亮) 1(灭)
5. 写Makefile
****************************************** led_test.c **********************************************************************
#include <linux/init.h>
static void led_exit(void)
{
printk(KERN_ALERT "led is off\n");
led_off(); //让LED4灭
}
module_init(led_init);
module_exit(led_exit);
MODULE_AUTHOR("Alvin Lee");
MODULE_LICENSE("GPL");
****************************************** Makefile **********************************************************************
obj-m := led_test.o
KDIR := /home2/alvinlee/v310_2/android-kernel-samsung-dev
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
rm -rf *.ko
rm -rf *.mod.*
rm -rf .*.cmd
rm -rf *.o