- 积分
- 294
- 最后登录
- 2024-3-25
- 精华
- 0
- 阅读权限
- 30
- 主题
- 4
- UID
- 2625502
- 帖子
- 661
- PB币
- 1015
- 威望
- 5
- 贡献
- 0
- 技术
- 0
- 活跃
- 1656
- UID
- 2625502
- 帖子
- 661
- PB币
- 1015
- 贡献
- 0
- 技术
- 0
- 活跃
- 1656
|
板凳
发表于 2016-5-1 22:20:49
IP属地广东
|只看该作者
本帖最后由 dqeduhjz 于 2016-5-2 19:15 编辑
3、DSDT、SSDT提取和修改
在clover中按F4提取到DSDT、SSDT后修改错误并打上电池、亮度、LPC、HPET等补丁后就剩下2个问题没有解决:(1)亮度快捷键是Fn+Home和Fn+PgUp,要改为Fn+F11和Fn+F12;(2)无法合盖睡眠,合盖后只是内屏关了其它无变化,但是可以按键睡眠。
亮度快捷键的设置参考了版主大人lisai9093的教程:https://bbs.pcbeta.com/viewthread-1481399-1-1.html,在_Q38和_Q39中加入相应代码成功设好了。
现在只剩下合盖睡眠了,为此我发了一个求助帖https://bbs.pcbeta.com/viewthread-1687687-1-1.html,最终还是自己通过白果DSDT弄好了。
过程如下:
在2015版Macbook Air白果DSDT中找到
- Scope (\_SB)
- {
- Device (SLPB)
- {
- Name (_HID, EisaId ("PNP0C0E")) // _HID: Hardware ID
- Name (_STA, 0x0B) // _STA: Status
- }
- }
复制代码 在EC中找到- Method (_QCF, 0, NotSerialized) // _Qxx: EC Query
- {
- If (LNot (OSDW ()))
- {
- Notify (\_SB.SLPB, 0x80)
- }
- }
复制代码 OSDW()是返回显示器状态,所以我判断_QCF就是合盖时触发的动作,Notify (\_SB.SLPB, 0x80)的作用就是睡眠。于是转到黑果中实验:
第一步先找到合盖时触发的动作是什么,安照版主大人lisai9093的教程https://bbs.pcbeta.com/viewthread-1481399-1-1.html,最终发现合盖触发_Q0C动作,于是在DSDT中Scope (\_SB)添加SLPB代码,
在_Q0C中添加Notify (\_SB.SLPB, 0x80),保存重启。
结果:
修改DSDT后合盖终于有变化了:机器直接休眠!!!,重新开机后必须以Cancle hibernate方式进入,否则不断重启!!离成功只差一步了,下面要解决的是如何合盖进入睡眠而不是休眠!!
最后发现只要修改睡眠模式为28,重启后成功实现合盖睡眠和按键睡眠。
|
|