本帖最后由 nylqd 于 2014-5-28 18:05 编辑
之前通过修改DSDT实现了风扇转速的检测,一直没有在意。之前都是可以正常检测到变化
这两天发现HWMontior在开机检测到一个转速之后,不管发生什么风扇的转速都不再变化,其他的数据能正常检测
虽然说不影响使用,但是强迫症不能忍啊。。。
不知道有么有哪位朋友遇到过这个问题,应该怎么解决呢?
FakeSMC版本为6.8.1307,放在/CLOVER/kexts/10.9下,没有添加到S/L/E
附上我实现风扇数据修改的dsdt
以下内容来自于
在此表示感谢
1、添加如下代码(建议先搜索是否有SMCD字段,我的没有,所以添加了,我是在Device (EC)前面添加): - Device (SMCD)
- {
- Name (_HID, "MON0000")
- Method (FAN0, 0, NotSerialized)
- {
- Store (B1B2 (^^EC.HFN1, ^^EC.HFN2), Local0)
- Return (Local0)
- }
- Method (TCPU, 0, NotSerialized)
- {
- Store (^^EC.TMP0, Local0)
- Return (Local0)
- }
- }
复制代码
2、添加B1B2函数(也建议搜索自己的DSDT里面是否有B1B2字段,我的没有,便添加了这个函数,我是在DSDT的尾部添加) - Method (B1B2, 2, NotSerialized)
- {
- Return (Or (Arg0, ShiftLeft (Arg1, 0x08)))
- }
复制代码
3、修改Device (EC)里面的风扇数据
搜索Device (EC),下拉,找到Method (_INI, 0, NotSerialized),在这个前面插入空行,添加以下代码: - Field (ECOR, ByteAcc, NoLock, Preserve)
- {
- Offset (0x84),
- HFN1, 8,
- HFN2, 8
- }
复制代码
|