问题描述
- ARM定时器首次进入中断后不退出
- request_irq(IRQ_TIMER1time2_interrupt IRQF_DISABLED | IRQF_TIMER Timer1 Tick"" NULL);
void clear_irq( )
{(*(volatile unsigned long *) CTRL1) &= ~(1<<15); //清楚中断标记
}static irqreturn_t time2_interrupt(int irq void dev_id )
{//((volatile unsigned long ) ROTCTRL) &= ~(1<<27);//关闭定时器2
//((volatile unsigned long *) CTRL1) &= ~(1<<14);//禁止中断
//writel(0x004bIO_ADDRESS(HW_TIMROT_TIMCTRL2));printk(""FIQHAPPEN:%08xn""FIQCT);
clear_irq( );
writel(0x4ffffIO_ADDRESS(HW_TIMROT_FIXED_COUNT1));
// (*(volatile unsigned long *) CTRL1) |= (1<<14); //使能中断
return IRQ_HANDLED;
}
申请定时器中断后,进如中断处理程序后,不能退出,一直执行打印语句。打印状态显示中断标记位未清除,这是怎么回事?
时间: 2024-10-30 16:07:10