S3C6410 按键驱动(一) --- 相关头文件的定义

1.IRQ_EINT(x) 中断号 

是在kernel/arch/arm/mach-s3c64xx/include/mach/irqs.h 当中定义的。

2.IRQF_TRIGGER_FALLING 下降沿触发

是在kernel/include/linux/interrupt.h 当中定义的。

3.DECLARE_WAIT_QUEUE_HEAD(name)  生成一个等待队列头,name就是那个头

是在kernel/include/linux/wait.h 当中定义的

4.void wake_up_interruptible(&name); 唤醒休眠

5.wait_event_interruptible(name,flag); 休眠

6.request_irq(key_irqs[num].irq,keys_interrupt,key_irqs[num].flags,key_irqs[num].name,(void *)&key_irqs[num]);  //申请中断

key_irqs[num].irq 中断号

keys_interrupt 中断处理函数

key_irqs[num].flags 中断触发方式

key_irqs[num].name 按键的名字

(void*)&key_irqs[num] 中断结构体,用来给中断处理函数提供参数

7.free_irq(key_irqs[num].irq,(void *)&key_irqs[num]); //释放中断

 

 

你可能感兴趣的:(S3C6410 按键驱动(一) --- 相关头文件的定义)