a2295926 发表于 2019-2-3 11:40

I2C GPIO补丁工具(辅助,热补丁,四叶草改名txt)

本帖最后由 penghubingzhou 于 2019-2-5 10:49 编辑

注意:自动化工具不可代替手动制作热补丁,本方法仅供参考!!!!!!




此乃VoodooI2C驱动补丁工具
特别说明:
本小工具测试阶段,使用过程遇到问题或者任何高见,欢迎回帖共同讨论(希望与大家共同找出通用补丁)
本小工具,是Windows 程序不是mac app(在下不才,不懂好像python高端语言)
本小工具虽然是Windows程序,还是可以在mac os使用CrossOver(mac os运行Windows程序)运行生成补丁
(压缩包,包含此工具)



(图1)


0.APCI文件
制作ssdt(hotpatch)补丁所需的AML文件(I2C所在AML文件,一般在dsdt)
*需要选择第4条 生成补丁类型为ssdt才可用
1.I2C设备
触摸板所在设备HID的I2C设备
*一些 I2C HID 设备在I2C0,一些在 I2C1 ,请根据自己情况选择
2.设备名称
触摸板所在设备HID的名称(补丁所在设备的_CRS)
3.设备id
*在Mac os 使用 IORegistryExplorer查看HID设备id(不用手动转换工具自动对应,通常制作成功后值有两个!根据自己选择)
*.打了补丁,可能查看不了设备ID ,要删除补丁才可以!保留禁用独显补丁即可
4. 生成补丁类型
类型有两种,第一种TXT补丁用于I2C所在APCI文件,第两种ssdt(hotpatch)补丁
*制作Ssdt(hotpatch)补丁
需要提供I2C所在AML文件
需要四叶草 ACPI/DSDT/Patches补丁,工具自动提取AML文件16进制码
(目的将原来的设备的_CRS屏蔽,就是_CRS改为XCRS,其他_CRS不会受影响,但补丁可能比较长,因为工具提取是唯一16进制码,I2C的_CRS代码相似比较高,所以比较长,当然可以加伪代码减少码的长度)
5.换行符类型
第一种,Windows的CR+LF, 第二种,Mac os 的LF(建议)
工具下载地址:

备注:
本小工具以:
https://voodooi2c.github.io/#GPIO Pinning/GPIO Pinning
理论基础制作成


本小工具由AutoIt编译而成(如同AutoIt名称 让it自动化)
本小工具因为Windows程序,可能会某安全软件报毒!(用与不用全你看自己选择)


dsdt,ssdt 请在四叶草启动菜单 按F4 提取


教程不是通用,所以好多论友遇到问题!
GPIO补丁制作中文教程(翻译)
https://bbs.pcbeta.com/viewthread-1797378-1-1.html

Huangshao123 发表于 2019-2-3 12:29

膜拜大神{:5_262:}

helpmans 发表于 2019-2-3 14:10

{:5_280:},这样的工具太棒。

云朵有点甜 发表于 2019-2-3 14:14

好东西,能不能简要说一下使用方法和要注意的地方

loonyeo 发表于 2019-2-3 14:20

谢谢楼主分享

ygwgod 发表于 2019-2-3 14:34

谢谢楼主分享

penghubingzhou 发表于 2019-2-3 15:38

我去win测试下我的,如果效果可以就给评分!!!

a2295926 发表于 2019-2-3 15:59

云朵有点甜 发表于 2019-2-3 14:14 https://www.pcbeta.com/static/image/common/back.gif
好东西,能不能简要说一下使用方法和要注意的地方

压缩里有更详细说明,如果在mac os 使用可以用CrossOver运行!(不过麻烦一些)
使用遇到问题有说明不明的地方,回帖反馈!这工具测试阶段!
对的,通常 Pin list 有两,至于是哪一个,需要自己测试
建议,先看GPIO补丁制作中文教程,找出自己I2C HID和APIC pin,再去制作补丁

a2295926 发表于 2019-2-3 16:04

penghubingzhou 发表于 2019-2-3 15:38 https://www.pcbeta.com/static/image/common/back.gif
我去win测试下我的,如果效果可以就给评分!!!

可以,不用在Windows使用 !在mac os 使用 CrossOver 运行工具一样 生成补丁的(就是运行一点麻烦咯,可以免了一次重启)

penghubingzhou 发表于 2019-2-3 16:26

a2295926 发表于 2019-2-3 16:04 https://www.pcbeta.com/static/image/common/back.gif
可以,不用在Windows使用 !在mac os 使用 CrossOver 运行工具一样 生成补丁的(就是运行一点麻烦咯,可以 ...

我现在卡在最后一步那里,没法生成SSDT,还有那个第六个到底应该怎么写。

qqttss25 发表于 2019-2-3 17:04

这么高端大气上档次的工具 牛

songguangyin 发表于 2019-2-3 17:12

6啊,老铁,我来试试试试看。

jkjk612 发表于 2019-2-3 17:36

好多工具,都不会用。

a2295926 发表于 2019-2-3 17:40

penghubingzhou 发表于 2019-2-3 16:26 https://www.pcbeta.com/static/image/common/back.gif
我现在卡在最后一步那里,没法生成SSDT,还有那个第六个到底应该怎么写。

第六那个,不用写的!作用创建GPIO.ini配置文件,和工具放在同一个文件夹下就可以 (作用转IORegistryExplorer查看到ID,所以没有介绍使用方式),压缩包已经有!
成生 ssdt(hotpatch)
提供I2C所在的AML文件
要提供正确 I2C HID 名称 ,名称不对无法生成补丁的
需要打四叶草 ACPI/DSDT/Patches补丁,将原AML的I2C HID下_CRS失去作用
(工具会自动反编译AML文件,
通过表达式搜索,找到 I2C HID 代码,
计算出设备的_CRS位置,转换,唯一的16进制码供四叶草 ACPI/DSDT/Patches补丁)

Carbin 发表于 2019-2-3 20:10

mark一下,备用

jndhui 发表于 2019-2-3 20:28

竟然不懂是干嘛用的

zymwmm 发表于 2019-2-4 09:13

谢谢楼主分享

小强大雕 发表于 2019-2-4 13:06

多谢大神分享,体验一下

CeWnHai 发表于 2019-2-4 22:18

谢谢,前来一试

penghubingzhou 发表于 2019-2-5 09:49

本帖最后由 penghubingzhou 于 2019-2-5 10:38 编辑

今天终于导出了热补丁,但是应用到四叶草的时候并没起作用(我已经添加了改名)
问题出在加载VoodooI2CControllerDevice驱动上。这个驱动无法从热补丁中正确获取I2C的转存信息,从而无法初始化I2C HID设备。目前我还在思考问题的原因。
另外,这个程序不能给GPIO 打补丁,这是一个非常大的问题。中断模式下,如果不给GPIO打补丁,部分机型将因无法获取GPIO信息而导致中断无法工作。后续问题我再继续补充。
页: [1] 2
查看完整版本: I2C GPIO补丁工具(辅助,热补丁,四叶草改名txt)