![[转发]黑苹果修改DSDT彻底解决关机不断电和睡眠问题,第1张 [转发]黑苹果修改DSDT彻底解决关机不断电和睡眠问题,第1张](/aiimages/%5B%E8%BD%AC%E5%8F%91%5D%E9%BB%91%E8%8B%B9%E6%9E%9C%E4%BF%AE%E6%94%B9DSDT%E5%BD%BB%E5%BA%95%E8%A7%A3%E5%86%B3%E5%85%B3%E6%9C%BA%E4%B8%8D%E6%96%AD%E7%94%B5%E5%92%8C%E7%9D%A1%E7%9C%A0%E9%97%AE%E9%A2%98.png)
1. 在 Method (_PTS, 1, NotSerialized)之前添加一个OperationRegion (PMRS, SystemIO, 0x0430, 0×13),如下:
OperationRegion (PMRS, SystemIO, 0×0430, 0×13)
Field (PMRS, ByteAcc, NoLock, Preserve)
{
, 4,
SLPE, 1
}
注意红色的0×0430是依据你的主板而定的,你在dsdt里搜索Processor,找到像下面这样的:
Processor (CPU0, 0×00, 0×00000410, 0×06)
如果是0×00000410, 就直接复制上面的就行了,如果是: Processor (P001, 0×01, 0×00000810, 0×06) {},就将0×0430改成0×0830。
可以大家已经发现规律了. Processor处是0×00000410,就用0×0430; Processor处是0×00000810, 就用0×0830. 同样如果你的dsdt的Processor处是0×00000610,就用0×0630.
2. 在Method (_PTS, 1, NotSerialized) 里将If (LEqual (Arg0, 0×05))修改成如下(没有的话就直接添加在最前面,像下面这个一样):
Method (_PTS, 1, NotSerialized)
{
//Store (Zero, \_SB.PCI0.LPC.EXPE) // 如果你的dsdt里Device (LPC)的OperationRegion里EXPE一项,可以去掉此行前面的“//”
If (LEqual (Arg0, 0×05))
{
//Store (0×01, \_SB.PCI0.LPC.EXPE) // 如果你的dsdt里device (lpc)的OperationRegion里expe一项,可以去掉此行前面的“//”
Store (Zero, SLPE) // 此行是关键不能删
Sleep (0×10) // 此行是关键不能删
}
其他原来的代码不动 … …
}
更改完成后在S/L/E和Extra中去掉NullCPUPowerManagement,使用原生的电源管理。
原链接:
http://www.perlface.eu/?p=685
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)