WINCE6.0+S3C2416 休眠唤醒BUG

loveboon1 2014-04-17 10:15:00
平台:2416 系统:WINCE6.0
BUG描述: 设备进入系统之后
1如果拔掉与PC端连接的USB下在线,那么WINCE6设备则能正常的休眠唤醒。但是偶尔会自动休眠.
2如果不拔掉,那么系统能休眠,但是上电第一次休眠唤醒正常之后,自动进入休眠一次,然后唤醒正常,之后也就是第三次休眠正常,但是唤醒之后,死机。此时PC上会提示 无法识别的USB设备...
BUG 出现时的DEBUG信息:
+++++ZSS OEMPowerOff_BSPPowerOn
[FTL: IN] ++FTL_ReadReclaim()
[FTL:OUT] --FTL_ReadReclaim()
[OND:MSG] FTL_ReadReclaim [OK]
WIFI_PowerUp
WCDMA_PowerUp
SCAN_PowerUp
GPS_PowerUp
BACKLED_PowerUp
VIBRATOR_PowerUp
LIGHT_PowerUp
>>++Liu wenlong-GPI_PowerUp
PCF:ZSS 20140416 HW_PowerUp
[FTL: IN] ++FTL_ReadReclaim()
[FTL:OUT] --FTL_ReadReclaim()
[OND:MSG] FTL_ReadReclaim [OK]
[HSMMC0] Power Up the HSMMC Host Controller
[HSMMC0] Power Up the HSMMC Host Controller
ERROR: Power Handler function yield to low priority thread.
[PLD_DEV] Init3G######################
[HSMMC0] Card is Inserted!
[HSMMC1] Card is Removed!
[PLD_DEV] Init3G over#################
[HSMMC0] Turn OFF the F/B delay control.
经过分析测试后看出:正常唤醒时的输出信息如下
+++++ZSS OEMPowerOff_BSPPowerOn
[FTL: IN] ++FTL_ReadReclaim()
[FTL:OUT] --FTL_ReadReclaim()
[OND:MSG] FTL_ReadReclaim [OK]
WIFI_PowerUp
WCDMA_PowerUp
SCAN_PowerUp
GPS_PowerUp
BACKLED_PowerUp
VIBRATOR_PowerUp
LIGHT_PowerUp
>>++Liu wenlong-GPI_PowerUp
PCF:ZSS 20140416 HW_PowerUp
[FTL: IN] ++FTL_ReadReclaim()
[FTL:OUT] --FTL_ReadReclaim()
[OND:MSG] FTL_ReadReclaim [OK]
[HSMMC0] Power Up the HSMMC Host Controller
[HSMMC0] Power Up the HSMMC Host Controller
ERROR: Power Handler function yield to low priority thread.
[PLD_DEV] Init3G######################
[HSMMC0] Card is Inserted!
[HSMMC1] Card is Removed!
[PLD_DEV] Init3G over#################
+++InitCodec
[HSMMC0] Turn OFF the F/B delay control.
---InitCodec
ZSS 2014-4-16 WAVEDEV: IOCTL_POWER_SET: D0 => D0
::Create key_button event end !!
RASCS_Disconnected: Ecode=619
ImeSelect
IME:Thread detach
Posting WM_NETCONNECT(FALSE) message, ErrorCode = 619(0x26B)
Entry out
.......
红色部分就是BUG出现时与正常唤醒时的区别。
求各位大神指点
...全文
871 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
91program 2014-12-05
  • 打赏
  • 举报
回复
引用 4 楼 loveboon1 的回复:
现在已经解决了,有问题请私信
问题解决了,请请结帐吧
loveboon1 2014-12-05
  • 打赏
  • 举报
回复
现在已经解决了,有问题请私信
loveboon1 2014-12-05
  • 打赏
  • 举报
回复
现在搞定了, 现在的版本已经能够实现真正的休眠和唤醒。主要修改的内容如下: 1. 在SMDK2416\Src\Oal\Oallib\startup.s 中 加入powerbutton 外部中断10的下降沿触发模式, 因为这里的“#Oextint1”没有原先的定义,所以要在“SMDK2416\Src\Inc\s3c2416.inc”中加入对它的定义。由s3c2413的datasheet可以知道它的地址值为0x8000008C,就是以0x80000000为基址的偏移量8C处。具体代码如下 2. 在SMDK2416\Src\Oal\Oallib\power.c.这里RTCCON这行加上了。 3. 在SMDK2416\Src\Oal\Oallib\power\off.c 1) 加上BSPPowerOff(); 2) 加上ConfigSleepGPIO();      改动这些之后 我们的设备就能进行休眠和唤醒了,但是有时候OK ,有时候会在唤醒的时候死在      现在的问题分析:1,还不确定到底是因为这些原因才致使休眠唤醒实现的,上一个版本总是在休眠的时候自动唤醒,针对于这个问题我做了从上第2个标签之后的修改。   可能,只需要修改RTCCON   可能,修改configsleepgpio;!!现在可以决定就是这个函数结束了自动唤醒的bug   可能,需要将上面的函数换做configstopgpio   如果上面的都OK 那么就是这个上图驱动的BUG。待续…… 重要参考文献: http://www.docin.com/p-325054287.html http://cky0612.blog.163.com/blog/static/27478916201161011450822/ http://cky0612.blog.163.com/blog/static/27478916201051793355837/ http://blog.csdn.net/jilong17/article/details/6602169 http://cky0612.blog.163.com/blog/#m=0&t=1&c=fks_087071084080082068083081095095086081085068092095087069 http://cky0612.blog.163.com/blog/static/27478916201172463017209/ (最后一个是WINCE6.0下开始菜单的“挂起(suspend)”是否可见及阻止系统进入睡眠模式 )
strong46066999 2014-11-09
  • 打赏
  • 举报
回复
楼主搞定没啊?
loveboon1 2014-04-17
  • 打赏
  • 举报
回复
问题补充: 死机的位置: [HSMMC1] Card is Removed! [PLD_DEV] Init3G over################# [HSMMC0] Turn OFF the F/B delay control. 到这里就死了

19,500

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧