我已将基于 omap4 的自定义板的一个 gpio 作为输入 gpio。当我在任何端口上连接任何外部硬件时,输入 gpio 被下拉,我在那个 gpio 上得到中断。
现在,当我运行 Linux 内核 2.6 时,它工作正常并在该 gpio 上获得中断,但是当我使用 Linux 内核 3.0 时,它不会在该 gpio 上创建中断。该 gpio 的值不会改变,并且不会调用中断处理程序。
那么在Linux内核中创建中断的功率级别设置有什么区别吗?
我已将基于 omap4 的自定义板的一个 gpio 作为输入 gpio。当我在任何端口上连接任何外部硬件时,输入 gpio 被下拉,我在那个 gpio 上得到中断。
现在,当我运行 Linux 内核 2.6 时,它工作正常并在该 gpio 上获得中断,但是当我使用 Linux 内核 3.0 时,它不会在该 gpio 上创建中断。该 gpio 的值不会改变,并且不会调用中断处理程序。
那么在Linux内核中创建中断的功率级别设置有什么区别吗?
如评论中所述,通过正确指定引脚上的上拉电阻解决了该问题。
通常要考虑的另一件事是“ pin-mux ”,即需要验证所讨论的引脚是否配置为 GPIO 而不是其他一些功能。
此处提供了引脚配置的详细说明,
特别是针对 OMAP4(mux、pull、wake-up)。