看板 LinuxDev 關於我們 聯絡資訊
各位大大好, 我想請問該如何再kernel裡定期去偵測gpio的狀態? 因為目前想透過直接控制gpio的high 與low的改變,去觸發driver做一些重載其他driver 的動作。 只是目前查到的都是需要透過userspace那邊做select或poll之類的來檢查gpio。 想請問是否有方法可以只在kernel實作? 先感謝各位的回覆。 如果有發文不恰當,也請多多包涵與指教^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.15.5.164 ※ 文章網址: https://www.ptt.cc/bbs/LinuxDev/M.1483936919.A.2BA.html
james732: 做成interrupt會不會比較好? 01/09 13:08
wens: interrupt 要 gpio 支援 interrupt, 不然就用 task / worker 01/09 14:17
wens: 看看 mmc core 用 gpio 做 card detect 的做法吧 01/09 14:17
askacis: 開一隻 kernel thread監測GPIO狀態 01/09 14:25
sm9195: 感謝各位提供方向,我會去試試看,再來分享結果 01/09 17:14
mayasky: 註冊個timer event? 01/10 02:06
aweilin: schedule_delayed_work ?定期去做pooling 01/11 20:41
clampsakura: Interrupt + SIGIO 01/14 02:22
changyuheng: https://goo.gl/IKg3Yc 01/26 16:53
sm9195: 感謝各位,小弟日前使用request_irq,搭配tasklet或workqu 02/22 13:52
sm9195: eue,可成功偵測gpio的變化,然後做相對應的動作。還有, 02/22 13:52
sm9195: 我所偵測的gpio有支援中斷。 02/22 13:52