mcluyu 发表于 2015-11-8 21:59

华硕Z170A主板解决假USB3.0问题分享

之所以会有这么一个折腾, 主要是偶然发现USB3.0设备插上去的速度大打折扣, 故想验证一下。

前几天成功在170平台安装10.11.1后也出了不少问题, 所以昨天又重装了一遍, USB在此主板上除了asmedia提供的USB3.1用不了外其他的都可以直接驱动,虽然包括两个USB2.0也识别为USB3.0, 都能用所以没有管它, 不过就在今天我用移动硬盘拷贝文件到桌面的时候速度慢的不行, 3.4G花了1分半, 感觉不对劲下了测速软件测试, 果然, 最快速度为46MB/s左右, 符合USB2.0下480Mbs带宽的速率,初步估计就是虽然识别为USB3.0, 但是其实是USB2.0的带宽爬文找原因, 主要参照以下3篇, 感谢原文作者 z1326 和 xmywuhong
1,技术原理储备:
https://bbs.pcbeta.com/viewthread-1646768-1-1.html
https://bbs.pcbeta.com/viewthread-1651615-1-1.html

2, 本文采用的解决办法
https://bbs.pcbeta.com/viewthread-1635486-1-1.html

参考了这些文章后我发现我的主板比较坑爹, 不知道是不是新主板都这样, 那就是USB主控只有USB3.0, XHC, 没有ehc USB2.0主控, 所以我的USB设备里全部识别为USB3.0, USB2.0口是从USB3.0主控转出来的, aida64截图, 只有3.1主控和3.0主控, 没有2.0



之前的IORegistryExplorer截图, 可以看到全是hs0X接口, HS即高速, 是USB2.0的接口


根据帖子内容, 因为我只有Xhc主控所以只需要管USB3, 我把USB 3.0
/System/Library/Extensions/IOUSBHostFamily.kext/Contents/PlugIns/AppleUSBXHCIPCI.kext拷贝出来, 打开Contents/Info.plist
找到我对应的smBios iMac17,1下的ports, 我对应的是主板说明书, 上面清楚的标注了USB口对应的编号, 这其中的7,8口未知, 没有对应的口所以不管。


其余的口只是USB2.0的是9,10,11,12,13,14, 其中9,10为机箱后部2.0口, 其他为主板插针
1,2,3,4,5,6是USB3.0, 其中5,6是机箱后面3.0接口, 其余为主板插座, 我前置面板两个3.0口接的是1,2


所以就有了以下修改, 我把所有有实体存在的口都添加上了, 并且把UsbConnector值设置为: USB2.0 : 0, USB3.0:3 主板插针, 没有插实体USB口的设为255表示其他接口。

另外我还把上面的IONameMatch从原来的XHC1改为XHC, 因为我的主板dsdt里是XHC, 反正都是改, 还不如直接在这里改, 不用再去改DSDT, 台式机DSDT随时变, 我也懒得用,虽然clover可以轻松的加一句改掉。。


修改为如下


因为USB3.0口要兼容2.0设备, 所以我的1,2,3,4,5,6口既有HS01。。02.。。。也有SSP1.。。2.。。
而其他的只是单独的USB2.0的就只需要设置HS

完成后我改名为ASUS170AppleUSBXHCIPCI.kext 安装回sle, 使用Kext Utility修复权限重建缓存, 重启, 有效果了



看图对比上面那个, 多出了3个SSP口, 就是USB3.0, 再看后面的 USBspeed=0x4为USB3.0的速度, 但是我添加的是6个SSP, 只出来3个, 是的, 很多人猜到了, 15端口限制, 数数上面的接口, 是不是刚好只有15个, 一个USB3.0在XHC主控中占用两个端口。。。
所以我只好忍痛割爱, 把我认为永远也用不到的13,14口(USB2.0, 主板印刷字样USB1314插针)和一个USB3.0(主板USB3.0插针印刷字样USB3_4)的USB2.0功能移除了{:5_265:}, 这下正好15个


再次安装到sle, 修复权限重建缓存, 重启, OK, 除了USB里依然全部识别为USB3.0,但是IORegistryExplorer显示正确


所有USB3.0的SSP口都有了

再来测一下速度, 移动硬盘的

虽然只有70多M, 银盘不太给力, 但是已经能说明问题, 相比之前的46, 已经突破了USB2.0的480Mbs带宽

完成了, 说的有错误的地方欢迎指正, 另外提供我修改的ASUS170AppleUSBXHCIPCI.kext下载, 如果有相同主板型号, 且机箱前面板的USB3.0和USB2.0插在了主板的印刷字样位置USB3_12 和USB1112的可以直接套用, 其他主板有需要的也可以下载自己再修改
PS:主板说明书是好东西, 比自己一个一个测试哪个位置是哪个编号快多了{:5_264:}




mcluyu 发表于 2015-11-9 09:39

终于审核过了, 都在上班上课了吗。。。

mapleer 发表于 2015-11-9 17:01

膜拜大神

FisherMac 发表于 2015-11-9 17:57

上次看到一个 去除15端口的限制
https://bbs.pcbeta.com/viewthread-1652403-1-1.html

试试看 有没效果了?

mcluyu 发表于 2015-11-9 18:35

mcluyu 发表于 2015-11-9 09:39 https://www.pcbeta.com/static/image/common/back.gif
终于审核过了, 都在上班上课了吗。。。

一会试试看, 但是感觉去除限制应该是没有一一添加端口的去除,添加了所有端口再去除限制总感觉是冲突的, 我也不知道那个补丁究竟是什么原理

mcluyu 发表于 2015-11-9 18:36

mapleer 发表于 2015-11-9 17:01 https://www.pcbeta.com/static/image/common/back.gif
膜拜大神

花半小时看贴, 其实很简单的

FisherMac 发表于 2015-11-9 21:04

mcluyu 发表于 2015-11-9 18:35 https://www.pcbeta.com/static/image/common/back.gif
一会试试看, 但是感觉去除限制应该是没有一一添加端口的去除,添加了所有端口再去除限制总感觉是冲突的, ...

原理是 原来 15个USB端口 改成 21个USB端口

mcluyu 发表于 2015-11-9 21:16

FisherMac 发表于 2015-11-9 21:04 https://www.pcbeta.com/static/image/common/back.gif
原理是 原来 15个USB端口 改成 21个USB端口

像这种clover打补丁的如果是想直接修改ketx, 有没有什么教程怎么修改, 我想直接修改我已经修改过得那个驱动

FisherMac 发表于 2015-11-9 21:27

mcluyu 发表于 2015-11-9 21:16 https://www.pcbeta.com/static/image/common/back.gif
像这种clover打补丁的如果是想直接修改ketx, 有没有什么教程怎么修改, 我想直接修改我已经修改过得那个 ...

没影响 补丁是有效的
你修改的只是 info.plist

mcluyu 发表于 2015-11-9 21:34

FisherMac 发表于 2015-11-9 21:27 https://www.pcbeta.com/static/image/common/back.gif
没影响 补丁是有效的
你修改的只是 info.plist

嗯, 所以我想学学怎么直接修改驱动来。。不过打补丁的话我这个应该直接给我已经修改过那个驱动打就可以吧?

FisherMac 发表于 2015-11-9 21:56

mcluyu 发表于 2015-11-9 21:34 https://www.pcbeta.com/static/image/common/back.gif
嗯, 所以我想学学怎么直接修改驱动来。。不过打补丁的话我这个应该直接给我已经修改过那个驱动打就可以吧 ...

远景 好像没人写这种 教程!! 高手都藏起来 跑去淘宝 黑苹果 装机赚钱了

mcluyu 发表于 2015-11-9 22:11

FisherMac 发表于 2015-11-9 21:56 https://www.pcbeta.com/static/image/common/back.gif
远景 好像没人写这种 教程!! 高手都藏起来 跑去淘宝 黑苹果 装机赚钱了

好吧,,{:5_278:}

shakayx 发表于 2015-11-23 11:10

用Clover把XHC1改为XHC是怎么改的?我昨天还找到了。今天就找不到了。。

shakayx 发表于 2015-11-23 11:18

FisherMac 发表于 2015-11-9 17:57 https://www.pcbeta.com/static/image/common/back.gif
上次看到一个 去除15端口的限制
https://bbs.pcbeta.com/viewthread-1652403-1-1.html



我感觉我的USB3.0有些奇怪。居然是下图这样的。看贴子都是SSP1等。另用Clover怎么把XHC1改成XHC呢?attach://3822292.png





shakayx 发表于 2015-11-23 11:19

FisherMac 发表于 2015-11-9 17:57 https://www.pcbeta.com/static/image/common/back.gif
上次看到一个 去除15端口的限制
https://bbs.pcbeta.com/viewthread-1652403-1-1.html



我感觉我的USB3.0有些奇怪。居然是下图这样的。看贴子都是SSP1等。另用Clover怎么把XHC1改成XHC呢?



loonyeo 发表于 2015-11-23 11:19

谢谢楼主分享

mcluyu 发表于 2015-11-24 09:58

shakayx 发表于 2015-11-23 11:10 https://www.pcbeta.com/static/image/common/back.gif
用Clover把XHC1改为XHC是怎么改的?我昨天还找到了。今天就找不到了。。

https://bbs.pcbeta.com/viewthread-1651615-1-1.html

这个帖子有

lvwenqiang 发表于 2015-11-26 11:04

谢谢分享 学习学习

q448100070 发表于 2015-11-26 13:23

此方法可行 已成功

goggog 发表于 2016-2-12 17:55

感谢正需要
页: [1] 2 3
查看完整版本: 华硕Z170A主板解决假USB3.0问题分享