本帖最后由 s1025xfei 于 2013-3-17 21:07 编辑
4830TG EHC1和EHC2的设备ID分别是0x1C26和0x1C2D可能个人情况不同,自己去AIDA64里面自己去看
其中EHC1部分修正之后如下: - Method (_DSM, 4, NotSerialized)
- {
- Store (Package (0x09)
- {
- "device-id",
- Buffer (0x04)
- {
- 0x26, 0x1C, 0x00, 0x00
- },
- "AAPL,clock-id",
- Buffer (One)
- {
- 0x01
- },
- "device_type",
- Buffer (0x05)
- {
- "EHCI"
- },
- "AAPL,standard-port-current-in-sleep",
- 0x01F4,
- Buffer (One)
- {
- 0x00
- }
- }, Local0)
- DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
- Return (Local0)
- }
复制代码
而EHC2部分修正之后为:
- Method (_DSM, 4, NotSerialized)
- {
- Store (Package (0x09)
- {
- "device-id",
- Buffer (0x04)
- {
- 0x2D, 0x1C, 0x00, 0x00
- },
- "AAPL,clock-id",
- Buffer (One)
- {
- 0x02
- },
- "device_type",
- Buffer (0x05)
- {
- "EHCI"
- },
- "AAPL,standard-port-current-in-sleep",
- 0x01F4,
- Buffer (One)
- {
- 0x00
- }
- }, Local0)
- DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
- Return (Local0)
- }
复制代码
DSDT电池电量修改for AppleACPIBatteryManager.kext原帖参照https://bbs.pcbeta.com/viewthread-935582-1-1.html不过4830TG的DSDT里面某些参数可能与原文不太一样,所以在此发出修改方法
- 先在
- dsdt头部
- 的
- Method (DTGP, 5, NotSerialized)
- {
- 省略
- }
- 这段下面
- 添加下面的代码
- Method (B1B2, 2, NotSerialized)
- {
- Or (ShiftLeft(Arg1,0x08), Arg0, Local0)
- Return (Local0)
- }
- 先搜索查找下面
- BPV0, 16,
- BDC0, 16,
- BFC0, 16,
- BAC0, 16,
- BDV0, 16,
- 上面这些都发现出现在 在Device (EC0) 的 (ERAM, ByteAcc, Lock, Preserve)下(个人自己的得具体看)
- 要拆成两个8bit的;注一律改B为S,避免冲突(//是注释掉原来的)
- //BPV0, 16,
- SPV0, 8,
- SPV1, 8,
- //BDC0, 16,
- SDC0, 8,
- SDC1, 8,
- //BFC0, 16,
- SFC0, 8,
- SFC1, 8,
- //BAC0, 16,
- SAC0, 8,
- SAC1, 8,
- //BDV0, 16,
- SDV0, 8,
- SDV1, 8,
-
- //Store (^^EC0.BAC0, Local1)
- Store (B1B2(^^EC0.SAC0,^^EC0.SAC1), Local1)
- //Store (^^EC0.BDC0, Index (PBIF, One))
- Store (B1B2(^^EC0.SDC0,^^EC0.SDC1), Index (PBIF, One))
- //Store (^^EC0.BFC0, Index (PBIF, 0x02))
- Store (B1B2 (^^EC0.SFC0, ^^EC0.SFC1), Index (PBIF, 0x02))
- //Store (^^EC0.BDV0, Index (PBIF, 0x04))
- Store (B1B2 (^^EC0.SDV0, ^^EC0.SDV1), Index (PBIF, 0x04))
- //Store (^^EC0.BDC0, Local2)
- Store (B1B2 (^^EC0.SDC0, ^^EC0.SDC1), Local2)
- //Store (^^EC0.BPV0, Local3)
- Store (B1B2 (^^EC0.SPV0, ^^EC0.SPV1), Local3)
- //Store (^^EC0.BFC0, Local1)
- Store (B1B2 (^^EC0.SFC0, ^^EC0.SFC1), Local1)
复制代码
AppleACPIBatteryManager.kext修改好DSDT后要将AppleACPIBatteryManager.kext安装到SLE才行
接下来关于声卡驱动的问题
参照链接在3楼 CX20588声卡驱动在l楼下载 1. 使用VoodooHDA声卡驱动 (必须要删除S/L/E中的 AppleHDA 声卡驱动)
其实直接安装完VoodooHDA-v2.7.4.pkg万能声卡驱动重启后就行了
但是不太完美
然后下载这里的修改过的VoodooHDA声卡驱动
用Kext Wizard安装到 S/L/E修复权限和重建缓存后重启就好
-笔记本扬声器 ok
-笔记本内置mic ok
-外接mic ok
-外接耳机 ok
-插入外接耳麦自动切换 ok
-HDMI no
当然这样做可以不用修改DSDT的
要是独立使用VoodooHDA声卡驱动而不先安装VoodooHDA-v2.7.4.pkg万能声卡驱动的话
要在DSDT里面的
Device (HDEF)下面
添加下面一段
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x06)
{
"hda-gfx",
Buffer (0x0A)
{
"onboard-1"
},
"layout-id",
Buffer (0x04)
{
0x1C, 0x00, 0x00, 0x00
},
"PinConfigurations",
Buffer (Zero) {}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
2. 使用AppleHDA声卡驱动
如果安装了VoodooHDA声卡驱动的话,请先删除VoodooHDA,2者不能同时使用
笔记本扬声器 ok
-笔记本内置mic ok
-外接mic
-外接耳机 no
-插入外接耳麦自动切换 no
-HDMI ok
下载附件中的声卡驱动AppleHDA安装到S/L/E修复权限和重建缓存
要在DSDT里面的
Device (HDEF)下面
添加下面一段
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x06)
{
"hda-gfx",
Buffer (0x0A)
{
"onboard-1"
},
"layout-id",
Buffer (0x04)
{
0x1C, 0x00, 0x00, 0x00
},
"PinConfigurations",
Buffer (Zero) {}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
然后将CX20588.app加入开机启动项就行了
|