attend 发表于 2021-12-16 23:18

USB问题

1.        所需工具:
a.        Usbinjectall.kext - https://bitbucket.org/RehabMan/os-x-usb-inject-all/downloads/
b.        Hackintool - https://github.com/headkaze/Hackintool
c.        USBMap-master - https://github.com/corpnewt/USBMap
d.        Usb3.0盘和usb2.0盘。

2.        调整OC配置
如果已经有usb的扩展,关掉。加入usbinjectall.kext。在kernel->Quirks里选上XhciPortLimit

重启电脑。用usb2.0和usb3.0的盘分别遍历usb端口。凡是有效端口,在hackintool显示的是绿色的。记下所有有效端口。

另外可以利用IORegistryExplorer这个软件同时检测。好处是可以检测蓝牙的usb端口。

3.        利用USBmap制作usbmap.kext
在记下所有端口后,运行usbmap.command。

选择R,重置所有端口。选择D,检测端口。之后选择P,生成USBMap.kext文件。

在使用USBMap生成usbmap.kext的时候,因为有效端口不足15个,可以把其他未检测出的非有效端口也加入进去。因为有时候,第二步在使用usbinjectall.kext时候未必可以把所有端口都检测出来。例如,我的两个端口usb2.0未检测出,在制作usbmap.kext时候,添加几个非有效的端口反而可以把这两个端口加入。

另外,笔记本上的蓝牙是属于USB设备,虽然不能通过插拔usb盘方法检测出来,但也应该在制作usbmap.kext时候把端口加上。

选择刚才记录下的有效端口,依次键入编号,选中端口为蓝色。之后选择k,生成USBMap.kext文件。

4.        使用生成的USBMap.kext文件。
把文件拷入OC目录,在OC配置文件中选择USBMap.kext,同时取消usbinjectall.kext。并且反选kernel->Quirks里的XhciPortLimit
之后重启电脑即可。

ljd111 发表于 2021-12-17 09:12

好帖,感谢楼主的分享!
页: [1]
查看完整版本: USB问题