前面大致把处理流程都稍代说了,这里总结下大概过程,跳过前面的已经说过的中断汇编部分,
asm_do_IRQ
—-handle_IRQ
—–generic_handle_irq
—-desc->handle_irq
—–handle_level_irq (例子)
—-irqreturn_t handle_irq_event
—–handle_irq_event_percpu
—– action->handler(irq, action->dev_id); (循环遍历所有的action)
Thanks
相关阅读:
Linux中断导读之一–初始化<1> http://www.linuxidc.com/Linux/2012-01/52787.htm
Linux中断导读之一–初始化<2> http://www.linuxidc.com/Linux/2012-01/52837.htm
Linux中断导读之一–注册部分<3> http://www.linuxidc.com/Linux/2012-01/52838.htm