我的問題是: 當調用free_irq時觸發中斷處理程序。我在內核消息中注意到調用了處理程序,但由於我們的設備沒有請求中斷,因此提示沒有收到中斷。 它預期的行爲?任何人都可以幫忙嗎?當調用free_irq時觸發中斷處理程序
回答
當您註冊(可能)共享中斷(使用IRQF_SHARED)的處理程序時,該中斷可能會由您的驅動程序無法控制的其他設備觸發,因此您的驅動程序必須準備好接收任何中斷時間。
爲了幫助調試驅動程序,內核將(當CONFIG_DEBUG_SHIRQ被設置時)僞造一些中斷來檢查你的驅動程序是否工作正常。
[source code]
我有共享中斷,但沒有其他設備觸發中斷,因爲/ proc/interrupts中的IRQ不會增加。其次,你可以請幫忙如何檢查CONFIG_DEBUG_SHIRQ是否設置? – user3257306
內核的行爲證明CONFIG_DEBUG_SHIRQ已設置。 –
有沒有辦法確認這個宏? – user3257306
如果我理解您的文章的權利 - 你必須關閉之前發出中斷在硬件調用free_irq(),那麼您將不會收到中斷而free_irq()。
- 1. 發出中斷時不會調用中斷處理程序
- 2. 多處理程序中調用subprocess.Popen()時發生斷管。()
- 3. 多點觸控處理程序在javascript中觸發單觸處理程序
- 4. 當launchd殺死進程時,是否調用XPC中斷處理程序?
- 5. 觸發內核中斷處理程序:如何?
- 6. 爲什麼我的中斷處理程序不能觸發?
- 7. 調度中斷處理程序
- 8. 當使用觸摸UI的處理程序時,可檢查不觸發
- 9. branch.initSessionWithLaunchOptions處理程序在應用程序退出時觸發
- 10. SVPullToRefresh在觸發時不會觸發動作處理程序
- 11. 中斷處理程序時間記帳
- 12. 在中斷處理程序
- 13. 如何使用request_threaded_irq,以便在線程化處理程序工作時調用中斷處理程序?
- 14. 在jQuery觸發器上調用不正確的處理程序
- 15. 新的處理程序觸發Visual Studio中的調試失敗
- 16. 第一次調用處理程序時分離處理程序
- 17. 計時器事件處理程序不斷被調用?
- 18. 當它再次被觸發時,VB.net事件處理程序中止
- 19. firefox不觸發默認處理程序
- 20. 事件處理程序觸發System.StackOverflowException
- 21. JavaFX處理程序未觸發
- 22. touchend處理程序觸發兩次
- 23. HTTP處理程序不會觸發
- 24. signal()處理程序立即被觸發
- 25. Javascript事件處理程序未觸發
- 26. Sharepoint事件處理程序未觸發
- 27. 處理程序處理消息時UI正在中斷
- 28. Allegro程序觸發斷點?
- 29. HtmlButton處理程序在單擊時觸發兩次(當AutoEventWireup =「True」時)
- 30. 當回調觸發手動表單提交時,jQuery表單提交處理程序不會被調用
中斷處理程序將不會被調用,除非捕獲到中斷處理程序註冊的中斷。你能提供更多細節,還是可以分享你的代碼。這樣我們的反應會更有成效。 –