作者sm9195 (sm9195)
看板LinuxDev
标题如何在kernel里定期侦测gpio状态?
时间Mon Jan 9 12:41:56 2017
各位大大好,
我想请问该如何再kernel里定期去侦测gpio的状态?
因为目前想透过直接控制gpio的high 与low的改变,去触发driver做一些重载其他driver
的动作。
只是目前查到的都是需要透过userspace那边做select或poll之类的来检查gpio。
想请问是否有方法可以只在kernel实作?
先感谢各位的回覆。
如果有发文不恰当,也请多多包涵与指教^^
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 101.15.5.164
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/LinuxDev/M.1483936919.A.2BA.html
1F:推 james732: 做成interrupt会不会比较好? 01/09 13:08
2F:→ wens: interrupt 要 gpio 支援 interrupt, 不然就用 task / worker 01/09 14:17
3F:→ wens: 看看 mmc core 用 gpio 做 card detect 的做法吧 01/09 14:17
4F:推 askacis: 开一只 kernel thread监测GPIO状态 01/09 14:25
5F:→ sm9195: 感谢各位提供方向,我会去试试看,再来分享结果 01/09 17:14
6F:→ mayasky: 注册个timer event? 01/10 02:06
7F:→ aweilin: schedule_delayed_work ?定期去做pooling 01/11 20:41
8F:推 clampsakura: Interrupt + SIGIO 01/14 02:22
10F:→ sm9195: 感谢各位,小弟日前使用request_irq,搭配tasklet或workqu 02/22 13:52
11F:→ sm9195: eue,可成功侦测gpio的变化,然後做相对应的动作。还有, 02/22 13:52
12F:→ sm9195: 我所侦测的gpio有支援中断。 02/22 13:52