IRQF_ONESHOT的解释

 

  • 在使用requeset_threaded_irq()申请中断线程的时候,发生中断后需要先执行上半部处理函数primary_handler和下半部处理函数buttom_handler,默认primary_handler为NULL,这时IRQF_ONESHOT标识不可少,否则中断会申请失败
  • 上半部中断处理函数执行期间中断是被关闭的,若在下半部分处理函数中也需要达到关闭中断的效果则添加IRQF_ONESHOT,这样只有上半部和下半部完整地执行了之后才会相应下一次中断
  • IRQF_ONESHOT的作用是保证thread_handler函数执行完整,才会接受下一个中断信号

posted @ 2023-01-29 15:12  轻轻的吻  阅读(803)  评论(0编辑  收藏  举报