#include <linux/kernel.h> //基础头文件,包括类型申明和printk
#include <linux/init.h> //module_init, __init
#include <linux/module.h> //MODULE_LICENSE
#include <linux/io.h> //ioremap ioread32 iowrite32
#include <mach/regs-gpio.h> //arch/arm/mach-exynos/include/mach/regs-gpio.h包含了mach/map.h,map.h又包含了plat/map-s5p.h,该头文件中包含寄存器的静态映射地址的宏定义
#include <linux/interrupt.h> //request_irq
#include <mach/irqs.h> //中断号,已包含plat/irqs.h
#include <mach/regs-clock.h> //EXYNOS4_CLKGATE_IP_PERIR
#include <linux/ioport.h> //request_mem_region, release_resource
#include <linux/ioctl.h> //include/asm-generic/ioctl.h
#include <linux/fs.h> //file_operations
#include <linux/device.h> //class_create device_create
#include <linux/sched.h> //copy_to_user函数有关
#include <asm/uaccess.h> //copy_to_user函数有关