新闻  |   论坛  |   博客  |   在线研讨会
LINUX 休眠唤醒问题
tingzi | 2008-04-29 17:19:36    阅读:3515   发布文章

问题:LINUX中,通过电源管理驱动(自行开发!)调用LINUX内/kernel/power/内的功能函数,实现将系统资源SUSPENDING,后等待外部中断(按鍵或USB等)或定时中断,把系统唤醒。此过程中,出现无法RESUMING的情况。

分析:SUSPENDING过程中,按顺序把资源保存队列中,再调用相应资源的SUSPEND,把资源挂起。挂起中把UART挂起。然后没有调试信息输出。按鍵无法唤醒。办法:逐步找出问题所在!

查找问题:

1,比较和正常的挂起和唤醒的区别。

2,了解挂起和唤醒的全过程

3,把串口SUSPENDING和RESUMING屏蔽。目的是为了找出相应的问题所在!

4,重新调试,发现系统在休眠过程中,关UART后,系统还有其他的资源要挂起。

5,重新调试,发现系统在休眠后,按鍵唤醒过程中,发现了问题出现在RESUMING某个挂起的資源上。而这个资源挂起又在UART后,故无法找到问题。

6,按问题所在,修改该資源的SUSPEND和RESUME!!

7,问题解决!!

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客