Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

搜索
查看: 18755|回复: 48

[交流] 睡眠问题解决之路(秒醒->唤醒死机->正常) [复制链接]

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 11:47:00 |显示全部楼层
我的机子是Thinkpad SL400,芯片组ICH9M,14年成功装上了Yosemite,加载AppleLPC后就可以正常睡眠了。后来升级了El Capitan,在DSDT未作修改、驱动也都正常加载的情况下,睡眠秒醒。一直没去解决,最近几天花时间把问题解决了,问题还是在USB设备的_PRW方法上,在此跟大家交流交流,下面是正题。

第一步就是查看系统日志的唤醒原因:Wake reason: USB0 GBE USB3 USBE EUSB 或者 Wake reason: HDAC USBE EUSB
确定是USB设备的问题导致的睡眠秒醒(其中GBE不知道是什么设备),首先我考虑的是_DSM方法,尝试过注入device ID,添加AAPL字段等等,睡眠情况与之前没有任何区别;后来看到这篇帖子,我开始考虑_PRW方法。
打开DSDT查看_PRW(Power Resources for Wake)的内容,是这样的:
  1.                Method (_PRW, 0, NotSerialized)
  2.                 {
  3.                     Return (GPRW (0x03, 0x03))
  4.                 }
复制代码
但各个设备的返回值都不一样,这里列一个表:
设备名称 _PRW类型
USB0 Method 0x03, 0x03
USB3 Method 0x0E, 0x03
USBE Method 0x0D, 0x03
EUSB Method 0x0D, 0x03
GBE Method 0x0D, 0x04
HDAC
Method 0x0D, 0x03
根据上面提到的帖子里的说法,将返回值更改为0x09,0x04,结果可以睡眠,但是唤醒后死机(可以用键盘或电源键唤醒,唤醒后屏幕黑屏,试用各种键盘快捷键如调音量、重启等都得不到相应的反馈,所以我判断是死机了)。

现在变成这么解决唤醒死机的问题了,同样的,还是先尝试修改_DSM方法,仍然是没有变化(我的USB设备,不管有没有注入deviceID,在系统信息里都不会显示为内建,也不知道为什么),所以问题还是在_PRW方法上。我尝试了各种返回值,如0x0D,0x00、0x00,0x00、0x09,0x00,甚至直接删除_PRW方法,结果都是要不秒醒,要不睡死。

在爬帖的过程中注意到,好多人的_PRW的类型不是方法(Method),而是命名(Name),于是我尝试将我自己_PRW都改成Name,即是将
  1.                Method (_PRW, 0, NotSerialized)
  2.                 {
  3.                     Return (GPRW (0x0D, 0x00))
  4.                 }
复制代码
改成=>
  1.                Name (_PRW, Package (0x02)
  2.                 {
  3.                     0x0D,
  4.                     0x00
  5.                 })
复制代码
这里的值参考了RehabMan大神的修复USB3.0导致睡眠秒醒的补丁。重启载入新DSDT后成功睡眠,并可正常唤醒!
最后尝试只要修改USBE、EUSB、GBE和HDAC这四个设备的_PRW方法就可以了,再列表说明一下(作过修改的红色标记):

设备名称 _PRW类型
USB0 Method 0x03, 0x03
USB3 Method 0x0E, 0x03
USBE Name 0x0D, 0x00
EUSB Name 0x0D, 0x00
GBE Name 0x0D, 0x00
HDAC
Name 0x0D, 0x00

至此,升级到El Capitan后的睡眠问题解决,但我仍然不清楚这些返回值的意义,希望坛友们多多交流。
1

查看全部评分

Rank: 2Rank: 2

UID
3263490
帖子
154
PB币
69
贡献
0
技术
0
活跃
231
发表于 2016-4-7 12:03:41 |显示全部楼层
支持下!!!

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 12:08:29 来自手机 |显示全部楼层
xidibo 发表于 2016-4-7 12:03
支持下!!!

谢谢支持(﹒﹒)

Rank: 5Rank: 5Rank: 5

UID
3515309
帖子
1189
PB币
200
贡献
0
技术
0
活跃
1004
发表于 2016-4-7 13:12:18 |显示全部楼层
看看先、谢谢分享

Rank: 7Rank: 7Rank: 7

UID
4776985
帖子
2261
PB币
896
贡献
0
技术
0
活跃
1324
发表于 2016-4-7 13:49:48 来自手机 |显示全部楼层
谢谢楼主分享,我的现在睡眠只是显示器关了,主机还是一直在转,以前是正常的

Rank: 5Rank: 5Rank: 5

UID
3669009
帖子
433
PB币
69
贡献
0
技术
0
活跃
652
发表于 2016-4-7 14:20:12 |显示全部楼层
好贴,我之前直接删除方法后,一睡不起,待我用楼主的办法试试去

Rank: 5Rank: 5Rank: 5

UID
22440
帖子
936
PB币
1660
贡献
0
技术
70
活跃
1373
发表于 2016-4-7 14:22:00 来自手机 |显示全部楼层
问下楼主,对A卡有效吗

Rank: 5Rank: 5Rank: 5

UID
3604347
帖子
756
PB币
629
贡献
0
技术
1
活跃
961
发表于 2016-4-7 14:39:35 来自手机 |显示全部楼层
可以鼠标唤醒吗?

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 16:16:41 |显示全部楼层
Loueos 发表于 2016-4-7 14:39
可以鼠标唤醒吗?

不行,现在睡眠后usb是断电的,请问您有什么建议吗?

Rank: 2Rank: 2

UID
4772217
帖子
330
PB币
190
贡献
0
技术
0
活跃
226
发表于 2016-4-7 16:24:09 |显示全部楼层
虽然看不懂.但是感觉到了很厉害!!!!

Rank: 2Rank: 2

UID
4113735
帖子
425
PB币
52
贡献
0
技术
4
活跃
728
发表于 2016-4-7 16:27:38 |显示全部楼层
顶起来,希望更多人能分享成果

vistafans

Rank: 7Rank: 7Rank: 7

UID
31764
帖子
2542
PB币
6464
贡献
0
技术
23
活跃
984
发表于 2016-4-7 16:37:24 |显示全部楼层
支持楼主的折腾,黑苹果就是要折腾

Rank: 2Rank: 2

UID
450640
帖子
352
PB币
50
贡献
0
技术
0
活跃
1140
发表于 2016-4-7 17:28:25 |显示全部楼层
我也是ICH9M,打了补丁只能睡一次……先马一个等会试试

Rank: 2Rank: 2

UID
911356
帖子
315
PB币
200
贡献
0
技术
0
活跃
684
发表于 2016-4-7 17:42:40 |显示全部楼层
不错~支持一下,黑苹果就是需要这种举一反三的折腾精神

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 17:46:48 |显示全部楼层
甘新平 发表于 2016-4-7 13:49
谢谢楼主分享,我的现在睡眠只是显示器关了,主机还是一直在转,以前是正常的

找个时间睡一下,然后看看当时的系统日志有没有sleep和wake相关的内容,找一找问题所在。

比如说你今晚(4月7日)八点多试着睡眠,然后开机后,打开终端,输入:
  1. syslog | grep -i "sleep"| grep -i "Apr  7" | grep "20:"
复制代码
  1. syslog | grep -i "wake"| grep -i "Apr  7" | grep "20:"
复制代码
看看两个命令的输出,应该能看出点端倪来。

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 17:47:27 |显示全部楼层
ppforwork 发表于 2016-4-7 16:24
虽然看不懂.但是感觉到了很厉害!!!!

谢谢!

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 17:47:55 |显示全部楼层
tanpengsccd 发表于 2016-4-7 16:27
顶起来,希望更多人能分享成果

谢谢你!

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 17:51:26 |显示全部楼层
wagsin 发表于 2016-4-7 14:22
问下楼主,对A卡有效吗

这个我不清楚哦,没用过A卡,不知道A卡的情况,你搜索一下论坛吧,不好意思啊

Rank: 5Rank: 5Rank: 5

UID
3604347
帖子
756
PB币
629
贡献
0
技术
1
活跃
961
发表于 2016-4-7 18:03:39 |显示全部楼层
zhtengw 发表于 2016-4-7 16:16
不行,现在睡眠后usb是断电的,请问您有什么建议吗?

对啊,笔记本因为蓝牙,摄像头,导致睡眠秒醒。在想能不能只搞蓝牙,摄像头usb端口禁用。

Rank: 2Rank: 2

UID
4609680
帖子
126
PB币
504
贡献
0
技术
1
活跃
705
发表于 2016-4-7 19:06:59 |显示全部楼层
Loueos 发表于 2016-4-7 18:03
对啊,笔记本因为蓝牙,摄像头,导致睡眠秒醒。在想能不能只搞蓝牙,摄像头usb端口禁用。

这样的话,你可照我的办法试试。我的蓝牙和摄像头就是挂在USBE和EUSB两个设备下的,另外HDAC是声卡,改了这几个之后就可以睡眠了。USB口睡眠断电应该是另外的问题,可能跟我的USB无法内建有关,但这样改了以后起码能睡眠了。

如果你有其他好办法,麻烦分享一下啊
回顶部
Copyright (C) 2005-2021 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件