我需要唤醒我的BeagleBone设备,运行Angstrom OS,从睡眠模式到GPIO信号。
我读到使用/sys/class/gpio/gpioXX/power/wakeup
是可行的方法。问题是电源目录下没有任何“唤醒”文件。那么,我应该如何进行激活呢?有没有重新编译内核的解决方案吗?
我可以从GPIO值读取正常,因此GPIO sysfs正在工作。
答案 0 :(得分:2)
在OMAP4xxx内核中GPIO驱动程序出现问题,当 mux子系统初始化之前初始化GPIO库时。这有效地防止了GPIO模式下引脚的唤醒。
您可以通过阅读struct mux[]
的{{1}}字段(文件drivers / omap / gpio-omap.c)来检查这一点。它们不应该保持NULL值。
gpio_bank
函数末尾有一个for循环。
您需要将其删除,并在void omap_gpio_mod_init(struct gpio_bank *bank)
函数末尾初始化mux
指针。
这将确保它正确地被引入。
另外,据我记得,去抖时钟有些问题。如果我的第一个建议不起作用,请尝试禁用该针的去抖动。