本帖最后由 丶鸭梨大大。 于 2017-6-3 18:28 编辑
先说说为什么要这么做: 我的笔记本型号是Thinkpad T440 我发现我的USB3.0 驱动很有问题,只能用2.0的速度。在装了USBInjectAll.kext FakePCIID_XHCIMux.kext 等无解以后。当然我还遇到了 供电不足等问题。终于忍不住我开始研究所谓的属于自己的USB3.0驱动。
Step1 你要先进win系统用UsbTreeView这个软件 检测你的电脑用了哪些端口(台式机也可以) 你先在一个USB接口下插2.0 的U盘看软件显示哪个端口(port)工作,然后在这个接口下再插3.0的U盘看哪个端口(port)工作。然后一个个记录下来。当然还要记住后面的id 0x10
Step2 通过提取的DSDT 或者ssdt查看 XHCI(这是3.0的主控)下的命名 我的电脑是 XHCI EHC1 EHC2(我没有) 1.HSP0 0x10 PRT0 2.HSP1 PRT1 3.HSP2 PRT2 4.HSP3 PRT3 5.HSP4 PRT4 6.HSP5 PRT5 7.HSP6 PRT6 8.HSP7 PRT7
9.SSP0 10.SSP1 11.SSP2 12.SSP3
看着这个名字结合自己在win下测试的port 把不用的端口直接删掉(或者不删) 在mac 用软件 DPCIManager 查看XHCI的 id 比方说我的电脑是9c31 之后USBInjectAll.kext 修改 Info.plist 下IOKitPersonalities/ConfigurationData/Configuration 下的名字 8086_9xxx 修改为 8086_9c31 再然后点开这个子项目 下的ports下
Setp3 根据自己用到的端口改名 HSP0 之类的 后面的id也要对上 0x10的话就是01000000 以此类推。 改完后 就大功告成。放到clover下就好了。
这就是我驱动后的。
有些问题:我是把XHCI改成XHC后完美的。
附件:我修改后T440 win下用于读取port的软件
|