linuxgarry 发表于 2015-10-6 23:32

[搬运](8,9系主板)10.11 所有USB3.0驱动解决方案 不用修改SLE目录

本帖最后由 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的
需要用到的工具
Maciaslhttp://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









vay123 发表于 2015-10-7 09:42

板凳,赞赞赞!!

changkiao 发表于 2015-10-7 10:15

回复表示支持!

loppol 发表于 2015-10-7 10:18

感谢翻译~~~~
但是他的前提 我也是醉了
yosemite的ioreg 备份早已没了。。。。

迷途狼 发表于 2015-10-7 10:53

下个楼主的试下看行不,不行再慢慢弄了

Loueos 发表于 2015-10-7 10:58

很给力,日后再搞

jianxi310 发表于 2015-10-7 11:04

楼主扎实,支持楼主

leko999 发表于 2015-10-7 11:07

早先在insanelymac看过了,没看懂
首先重装个10.10就要挂掉一堆人了
然后它中间的那段


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进制的意思”

那些1000000啥的写在哪里?截图根本找不到地方。然后为什么2就是11000000,和进制换算对不上,不知道怎么个类推法。

补充内容 (2015-10-7 17:00):
看了两个小时的原文,对着自己的机器改着试了下,好像是搞懂了。真蛋疼,没Yosemite的确不好搞。

补充内容 (2015-10-7 19:01):
不要yosemite,windows就可以。终于搞定了。原版的英文教程老实说就写的不是太清楚,翻译成中文就更糊涂了。最好对着自己机器的DSDT来看。

leedone 发表于 2015-10-7 11:09

这个太牛逼了 ~!

东骧神骏 发表于 2015-10-7 11:35

技术贴,学习了、、、、

zjh821 发表于 2015-10-7 12:11

这个必须得赞{:5_262:}

olderhang 发表于 2015-10-7 13:01

能写详细一点吗,我10.10.5里面搜,就没搜到XHC1

hdzw2049 发表于 2015-10-7 16:11

回复表示支持!

wanchen 发表于 2015-10-7 16:15

技术贴,学习了、、、、

睡着的人 发表于 2015-10-7 16:39

楼主技术贴啊,还得学习啊

fzzf 发表于 2015-10-7 18:57

leko999 发表于 2015-10-7 11:07 http://cdn.pcbeta.img.inimc.com/static/image/common/back.gif
早先在insanelymac看过了,没看懂
首先重装个10.10就要挂掉一堆人了
然后它中间的那段


没Yosemite,,,能搞定吗????

leko999 发表于 2015-10-7 19:02

fzzf 发表于 2015-10-7 18:57 http://cdn.pcbeta.img.inimc.com/static/image/common/back.gif
没Yosemite,,,能搞定吗????

看我的补充。可以,刚刚搞定。原版教程有点问题,第一个找USB端口的图标错了!

fzzf 发表于 2015-10-7 19:04

leko999 发表于 2015-10-7 19:02 http://cdn.pcbeta.img.inimc.com/static/image/common/back.gif
看我的补充。可以,刚刚搞定。原版教程有点问题,第一个找USB端口的图标错了!

大神。。你写个教程吧。。。{:5_266:}

leko999 发表于 2015-10-7 19:04

等我有空写教程。这篇略坑。

fzzf 发表于 2015-10-7 19:07

leko999 发表于 2015-10-7 19:04 http://cdn.pcbeta.img.inimc.com/static/image/common/back.gif
等我有空写教程。这篇略坑。

乘热打铁吧。。。直接写吧。。。。{:7_504:}
页: [1] 2 3 4
查看完整版本: [搬运](8,9系主板)10.11 所有USB3.0驱动解决方案 不用修改SLE目录