当前位置: 技术问答>linux和unix
s3c6410中断驱动的问题
来源: 互联网 发布时间:2017-02-09
本文导语: 最近要在6410的开发板上编写一个中断驱动,在网上搜到了一篇文章,它里面有个中断结构,为: struct button_irq_desc{ ...
最近要在6410的开发板上编写一个中断驱动,在网上搜到了一篇文章,它里面有个中断结构,为:
struct button_irq_desc{
int irq;
int number;
char *name;
};
其中irq表示中断号,name表示中断名,那么请问number表示什么啊?
文章地址为:http://blog.csdn.net/wenhui_/article/details/6843512
struct button_irq_desc{
int irq;
int number;
char *name;
};
其中irq表示中断号,name表示中断名,那么请问number表示什么啊?
文章地址为:http://blog.csdn.net/wenhui_/article/details/6843512
|
因为程序中已经定义了结构体:
static struct button_irq_desc button_irqs[] = {
{IRQ_EINT(0), 0, "KEY0"},
{IRQ_EINT(1), 1, "KEY1"},
{IRQ_EINT(2), 2, "KEY2"},
{IRQ_EINT(3), 3, "KEY3"},
{IRQ_EINT(4), 4, "KEY4"},
{IRQ_EINT(5), 5, "KEY5"},
{IRQ_EINT(19), 6, "KEY6"},
{IRQ_EINT(20), 7, "KEY7"},
};
从中明确看见,一共使用了8个外部中断,8个按键key0~key7,
所以int nuber=0~7必定是按键号。
56 tmp = readl(S3C64XX_GPNDAT); //
57 down = !(tmp & (1
static struct button_irq_desc button_irqs[] = {
{IRQ_EINT(0), 0, "KEY0"},
{IRQ_EINT(1), 1, "KEY1"},
{IRQ_EINT(2), 2, "KEY2"},
{IRQ_EINT(3), 3, "KEY3"},
{IRQ_EINT(4), 4, "KEY4"},
{IRQ_EINT(5), 5, "KEY5"},
{IRQ_EINT(19), 6, "KEY6"},
{IRQ_EINT(20), 7, "KEY7"},
};
从中明确看见,一共使用了8个外部中断,8个按键key0~key7,
所以int nuber=0~7必定是按键号。
56 tmp = readl(S3C64XX_GPNDAT); //
57 down = !(tmp & (1