这两周很痛苦,因为自己负责的WIFI模块休眠唤醒有问题,导致每天晚上都睡不好觉,第二天没有精神上班。
不过所幸的是,这两天找到了方法解决了,现在想把经验和大家分享下。
把调试环境和硬件说一下:
硬件平台:三星S5PV210
kernel: 2.6.35
android:2.3.4
WIFI驱动使用SDIO接口,有独立的上电及复位接口。
先上问题:
在WIFI打开的情况下,在WIFI的设置界面,按“MENU”键,选择高级->Wi-Fi休眠策略->充电时永不休眠/永不休眠,然后按POWER键使机器进入深度休眠,唤醒后WIFI不正常,软件跑飞。
跑飞的LOG:
[ 96.430142] DAPM sequencing finished, waiting 2ms
[ 96.432989] DAPM sequencing finished, waiting 2ms
[ 96.437106] smdkc110-rtc smdkc110-rtc: rtc disabled, re-enabling
[ 96.437127] smdkc110-rtc smdkc110-rtc: rtc disabled, re-enabling
[ 96.437143] smdkc110-rtc smdkc110-rtc: rtc disabled, re-enabling
[ 96.437185] pm_op(): platform_pm_suspend+0x0/0x64 returns -16
[ 96.437197] PM: Device alarm failed to suspend: error -16
[ 96.437206] PM: Some devices failed to suspend
[ 96.437541] PM: resume of devices complete after 0.321 msecs
[ 96.486343] Restarting tasks ...
[ 96.493614] done.
[ 96.499432] suspend: exit suspend, ret = -16 (2012-06-12 08:24:09.352134502 UTC)
[ 96.508291] DAPM sequencing finished, waiting 2ms
[ 96.515022] DAPM sequencing finished, waiting 2ms
[ 96.518930] dai_active 0, IISMOD 00000100, IISCON 8050c491
[ 96.526857] Inside s5p_i2s_resume..@550
[ 97.430432] dhdsdio_d