arm linux 下中断流程简要分析注册中断
时间:11-09
来源:互联网
点击:
,对于IRQ_WDT来说这次的调用desc->chip->,对于IRQ_WDT来说这次的调用desc->chip->unmask(irq),实际上是s3c_irq_unmask,具体可查看前面分析的chip对象。
arch/arm/mach-s3c2410/Irq.c:
static void
s3c_irq_unmask(unsigned int irqno)
{
unsigned long mask;
if (irqno != IRQ_TIMER4 && irqno != IRQ_EINT8t23)
irqdbf2("s3c_irq_unmask %d/n", irqno);
irqno -= IRQ_EINT0;
mask = __raw_readl(S3C2410_INTMSK);
mask &= ~(1UL < irqno);
__raw_writel(mask, S3C2410_INTMSK);
}
对着s3c2410的data sheet一看就知道了, 就是打开相应中断。
至此中断处理函数安装好了,中断也打开了,系统就可以正确的响应中断了。
Ok,到此为止IRQ_WDT的中断注册过程已完成,此时的中断描述符如下所示:

armlinux中断流程注册中 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)
