Windows 下替换 ACPI Table补遗

之前介绍过 Windows 下替换 ACPI Table 的方法【参考1】,该方法可以替换 DSDT,但是最近工作中遇到需要修改的ACPI内容并不在 DSDT中,而是存放在 SSDT 中的情况,同时一个系统中还会有多个 SSDT。

打开注册表,在 Computer\HKEY_LOCAL_MACHINE\HARDWARE\ACPI  查找你需要的SSDT:

  打开注册表查看 ACPI Table

当然你可以先用 RW Everything 查看 ACPI Table 更加直观,SSDT 有很多个,彼此的 Signature 是相同的但是OEM Table ID 是不同的字符串:

RW Everything 查看ACPI Table

确定你要修改的SSDT,这里使用 OEM Table ID 为 “U_Rvp ”的这个 SSDT作为实验的目标:

    OEM Table ID 是 U_Rvp

上面提到的 U_Rvp 的 SSDT,在注册表中名称是SSD6:

注册表中的 SSD6 对应 RW Everything 中的 U_Rvp SSDT

接下来的操作和之前的类似

1.asl /tab=ssd6 /c保存成二进制文件:

2. 使用 iasl2016 -ve SSD60000.bin反编译之

3.修改代码,加入我们自定义的设备挂在 I2C 下面

4.再编译为 AML

5.asl /loadtable SSD60000.aml 加载这个 table

6.重启,进入设备管理器查看,再I2c 下面出现的一个 unknown 设备

设备管理器中的自定义设备
自定义设备属性

参考:

1. http://www.lab-z.com/arcpi/

发表评论

电子邮件地址不会被公开。 必填项已用*标注