本帖最后由 arslan2012 于 2015-10-16 18:01 编辑
由于在 OSX 10.11 上使用新的 USB 协议栈 使得OSX无法启用 USB3.0 设备失效,降级为usb2.0模式。
(不管你插入任何设备,都会被识别为usb 2.0)
本贴将彻底解决 USB2.0/3.0的问题,不碰SLE驱动目录。
需要注意的是,只有intel的USB3.0控制器才可以通过本帖进行相关设置。
第三方USB3.0 控制不支持,像NEC和ASMedia的
需要用到的工具
Maciasl http://sourceforge.n...ojects/maciasl/ http://sourceforge.n...ojects/iojones/ iojones
(会放在帖子尾部,可以下载)
首先我们需要在电脑上安装OSX 10.10,以便我们正确的查找到我们的USB端口。
在10.10上打开iojones,搜索XHC1
我们将会看到这些
本机是Asus Z97 Pro Gamer主板,所以 USB 2.0 接口 有4个(包含机箱内的USB2.0接口) 加上主板的IO端口的USB2.0 接口
类似下图
SSP3 是USB3.0 控制器
HS06 是USB2.0 控制器
(由于USB3.0 向下兼容USB2.0,所以3.0接口也被计算入USB2.0控制器接口。)
现在打开Maciasl加载你的DSDT(小白可以去爬文找DSDT文章。别再问DSDT应该放哪里,如何编译的问题。)
打开后,查找 Device“空格”(RHUB) 就会找到每个控制器的DSDT code。详细查看XHC1和EHC1的相关代码 (注:DSDT为主板BIOS驱动程序,为了防止刷主板驱动导致主板报废,故变色龙和Clover可以支持软加载主板驱动“DSDT”)
要注意每个端口的ADR数值,就像现在这样。
ADR one的意思就是 操作数值one
在鉴别了自己哪个是USB2.0和USB3.0接口以后。 就可以在DSDT里面对接口的操作数值进行修改。 如果是USB 2.0(HS控制器)如果ADR的值为 one 那就 改成 01 00 00 00(转换16进制后写入)。如果ADR的值为 two 那就 改成 11 00 00 00(转换16进制后写入)。
如果是USB3.0 (SSP控制器)如果ADR的值为 one 那就改成 10 00 00 00(转换16进制后写入)。如果ADR的值为 two那就改成 11 00 00 00(转换16进制后写入)。以此类推。
那么就要写成(0x40) “其中0x代表16进制的意思”
第二步:
#现在我们需要重命名 usb3.0 接口防止 Mac OSX 10.11 关闭他们的驱动,阻止他改成 ehc1 (USB2.0)方式加载。
找到 device ”空格“(EHC1) 找到 device “空格”(EHC2) 找到 device”空格”(XHC1) 将里面的EHC1标签里面的所有EHC1 替换成 EH01 将里面的EHC2标签里面的所有EHC2 替换成 EH02 将里面的XHC1标签里面的所有XHC1 替换成 XHC
第三步
现在我们打kext补丁 1,将Kext放到Clover目录kext文件夹里面。 2,将修改好的DSDT.aml放到ACPI的patch里面。 3,重启电脑。 4,正常情况下,你的USB端口的每个USB3.0设备都可以启用了。
提示:该补丁仅适用 imac 14,2的 SMBIOS,如果要修改成适应其他机型的。
Kext补丁对应的SMBIOS修改,可以参考文章
https://bbs.pcbeta.com/viewthread-1640179-1-12.html
原帖地址:http://www.insanelymac.com/forum/topic/308325-guide-1011-full-speed-usb-series-89-keeping-vanilla-sle/?p=2172365
|