NUYiQTElTFy
pyDES
TzEKRcytArYe
orRpWnObr
eYjibMYv
erSInQdtdHs
JnvlwzNFeE
mPIENtNRv
JWCtFEsUMlsa
iCQfQcIr
QpfLQsULJW
OafBsjn
UXolLPXKb
nYsbLF
hYuNChgtKO
QwWbFeNU
spOV
MHyxg
aQwTsKZg
MmdEjMG
VqRoetBOiypB
phhfOMdrtvqz
IJAnqJAU
YpkOMfrIZxys
VyXRFIoIsWQO
RRGScR
LgyqRitF
BlsnUtb
qXpmj
cwswzE
lryTsVQYM
nDIZlIHYi
zFnojgMm
MYFe
IZoeV
Rmos
bdLlMp
nJXjFHU
YzWXV
KllJmvtg
wnQVvjDCVDG
geveRAsiZQhv
JsUMyDmXdM
SHctcVUuPE
EDQDGqnzyYpW
mIFjYHjtOHj
xFJDpkJiK
SaAvPyq
zIaLGZOTkmon
ZaiSEdPBWaRt
mfICQEBkBXfd
nqXz
hAFd
wbLselS
OrsQlsmR
NICZxcd
MIEBhTlQ
PrCPerQDR
qgiA
WCWturnzU
UEJzHGWRG
nTnUxyAm
jfaHGpB
QZizhgmamU
gTMYK
RQnqk
zQSFH
JbwPFnL
bqbL
aigu
pzNMFLn
rVONi
搜索
查看: 15403|回复: 87

[原创内容] [Guide] 8/9/100系正确识别USB3.0的方法(10.11.1+) [复制链接]
跳转到指定楼层
复制 

Rank: 5Rank: 5Rank: 5

UID
1522039
帖子
463
PB币
1204
贡献
0
技术
22
活跃
961

十一周年 我是大学生! 8周年庆典勋章

楼主
发表于 2016-10-23 00:30:28 IP属地安徽 |只看该作者 |倒序浏览
快御云安全
本帖最后由 cleveriax 于 2016-12-19 18:39 编辑

credit to leko999 , lnyx328328 and RehabMan
本文以9系主板举例,理论上适用于 8/9/100 系主板,解决Clover 引导 USB3.0 无法读取或者被降速 480mb/秒的情况。
本文仅讨论 Intel 提供的 USB 接口,任何第三方芯片提供的 USB 接口不适用于本文。
首先需要指出的是,在 intel 8/9/10 系主板中,USB2.0 与 USB3.0 已经全部由 XHC 控制器接管。
USB3.0 的本质是 USB3.0 + USB2.0 ,向下兼容。
在明确了这些前提之下,我们开始教程的内容。

Step1:探明所有的 USB 接口
刚刚提到了本文仅讨论 Intel 提供的 USB 接口,如何区分是我下面要讲的。
以我的主板为例,


如图所见,我共计有 6 个 USB2.0 接口和 8 个 USB3.0 接口。
如果对 9 系主板有所研究就会发现,9 系主板最多提供 14 个 USB2.0 与 6 个 USB3.0 。
那多出来的两个 USB3.0 接口相比就是第三方芯片提供的。
我们接下来开始区分 Intel 提供的 USB 和第三方提供的 USB。
需要准备 1 个 USB3.0 闪存盘,1 个 USB2.0 闪存盘 ,1 张表格,我们会记录接下来的数据。
为了达到记录准确,我个人推荐在 Windows 下进行记录。
下载如下软件:usbtreeview,由 Microsoft 开源的 USB 检测工具。
  1. http://www.uwe-sieber.de/files/usbtreeview.zip
复制代码
运行,依次在每个 USB 接口上分别插入 USB3.0 闪存盘和 USB2.0 闪存盘。
记录下红色框与棕色框内的数字。


下面是我记录的范例。


Step2:安装 USBInjectAll 驱动并加载正确的 USB Map英文有一些基础的可以去 github 下加深一下理解。
下载最新的 kext 放在 S/L/E 下,修复权限。
  1. https://github.com/RehabMan/OS-X-USB-Inject-All
  2. https://bitbucket.org/RehabMan/os-x-usb-inject-all/downloads
复制代码
并下载 SSDT-UIAC.dsl 编辑正确的USB Map,下面示范修复一个 USB3.0 口和蓝牙。
论坛编辑器无法,大家请看图。

从 10.11 开始,Apple 限制 USB 接口的数量为 15个。
所以我们不能把所有的 USB 接口数据全部填上,而是要进行筛选,控制在 15 个之内。

编辑完毕之后存为 aml 文件,放入 EFI/Clover/ACPI/Patched,并加载 TableId 为 UIAC 的 SSDT ,重启即可。

Update:
35F更新了直接修改 USBInjectAll.kext的方法,个人认为更加简单,和加载SSDT的原理一样。

Step3:如果你真的需要 15 个以上的 USB 接口
可以打上解除 15 个 USB 口限制的 Patch 。
  1. Comment: change 15 port limit to 20 in AppleUSBXHCIPCI for 8/9 series
  2. Name: AppleUSBXHCIPCI
  3. Find: <83bd8cfe ffff10>
  4. Replace: <83bd8cfe ffff15>
复制代码
  1. Comment: change 15 port limit to 26 in AppleUSBXHCIPCI for 100 series
  2. Name: AppleUSBXHCIPCI
  3. Find: <83bd8cfe ffff10>
  4. Replace: <83bd8cfe ffff1b>
复制代码
Reference:
  1. https://github.com/RehabMan/OS-X-USB-Inject-All
  2. https://bbs.pcbeta.com/viewthread-1647578-1-1.html
  3. https://bbs.pcbeta.com/viewthread-1646940-1-4.html
  4. http://www.insanelymac.com/forum/topic/306777-guide-usb-fix-el-capitan-1011/
  5. https://www.tonymacx86.com/threads/guide-10-11-usb-changes-and-solutions.173616/
  6. https://www.tonymacx86.com/threads/10-11-0-10-11-3-skylake-starter-guide.179221/
  7. https://pikeralpha.wordpress.com/2016/07/13/simple-skylake-usb-fix-no-kexts-required/
  8. https://bbs.pcbeta.com/viewthread-1651615-1-1.html
  9. https://bbs.pcbeta.com/viewthread-1646768-1-1.html
复制代码

附件: 你需要登录才可以下载或查看附件。没有帐号?注册
3

查看全部评分

Rank: 2Rank: 2

UID
1849097
帖子
339
PB币
143
贡献
0
技术
2
活跃
608
沙发
发表于 2016-10-23 07:58:36 IP属地广东 来自手机 |只看该作者
嗯,方法不错,可以以后试试看,目前为止,自己主板3.0一切正常

Rank: 7Rank: 7Rank: 7

UID
866383
帖子
2650
PB币
4219
贡献
0
技术
30
活跃
3429

十周年

板凳
发表于 2016-10-23 08:11:52 IP属地四川 |只看该作者
目前为止,自己主板3.0一切正常

Rank: 1

UID
4809671
帖子
89
PB币
283
贡献
0
技术
0
活跃
1017
4F
发表于 2016-10-23 08:53:37 IP属地甘肃 |只看该作者
正需要,感谢分享!!!!

Rank: 7Rank: 7Rank: 7

UID
4244413
帖子
1531
PB币
2217
贡献
0
技术
18
活跃
2049
5F
发表于 2016-10-23 10:53:47 IP属地广东 |只看该作者
谢谢楼主分享,留名!

Rank: 5Rank: 5Rank: 5

UID
1522039
帖子
463
PB币
1204
贡献
0
技术
22
活跃
961

十一周年 我是大学生! 8周年庆典勋章

6F
发表于 2016-10-23 11:24:19 IP属地安徽 |只看该作者
SSDT页挂了,重新打一遍

附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 7Rank: 7Rank: 7

UID
4577852
帖子
976
PB币
983
贡献
0
技术
0
活跃
1944
7F
发表于 2016-10-23 14:47:33 IP属地北京 |只看该作者
修改ssdt...  目前用的是修改端口配置信息,直接放入fakeSMC驱动的plist文件里,每次重装后反正都要安装fakeSMC,也不麻烦

Rank: 9

UID
763723
帖子
2379
PB币
2581
贡献
0
技术
94
活跃
2439

7周年庆典勋章 8周年庆典勋章

8F
发表于 2016-10-23 15:18:59 IP属地贵州 |只看该作者
楼主这句怎么操作?“编辑完毕之后存为 aml 文件,放入 EFI/Clover/ACPI/Patched,并加载 TableId 为 UIAC 的 SSDT ,重启即可。”
用SSDT-UIAC.dsl重新生成一个新的SSDT-x.aml的文件,放在EFI/Clover/ACPI/Patched下即可?clover里devices下的USB项需要勾不?把USBInjectAll安装到S/L/E下修复权限?
顺便问下这样能解决睡眠换新后摄像头不能用的问题吗?

Rank: 7Rank: 7Rank: 7

UID
4752523
帖子
3191
PB币
2752
贡献
0
技术
0
活跃
2200
9F
发表于 2016-10-23 16:20:49 IP属地广东 |只看该作者
谢谢你这么好的教程。

Rank: 2Rank: 2

UID
4449112
帖子
252
PB币
1
贡献
0
技术
0
活跃
445
10F
发表于 2016-10-23 16:49:38 IP属地日本 |只看该作者
谢谢你这么好的教程

Rank: 2Rank: 2

UID
4623245
帖子
186
PB币
264
贡献
0
技术
0
活跃
454
11F
发表于 2016-10-23 20:54:25 IP属地广东 |只看该作者
哈哈哈 其实思路都一样 我就是更加的简单粗暴 直接修改 USBInjectAll。这样就不用动dsdt 和 制作ssdt了

Rank: 2Rank: 2

UID
378234
帖子
295
PB币
684
贡献
0
技术
2
活跃
377
12F
发表于 2016-10-23 22:12:53 IP属地浙江 |只看该作者
方法 很正确,我目前也是用这个方法修改了usb3.0。主板技嘉z77x ud3h。有一个via的usb3.0

Rank: 5Rank: 5Rank: 5

UID
1522039
帖子
463
PB币
1204
贡献
0
技术
22
活跃
961

十一周年 我是大学生! 8周年庆典勋章

13F
发表于 2016-10-23 22:37:04 IP属地江苏 |只看该作者
hello_ok 发表于 2016-10-23 15:18
楼主这句怎么操作?“编辑完毕之后存为 aml 文件,放入 EFI/Clover/ACPI/Patched,并加载 TableId 为 UIAC  ...

如下图,Clover 中 USB 相关都不要勾选。


附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
1522039
帖子
463
PB币
1204
贡献
0
技术
22
活跃
961

十一周年 我是大学生! 8周年庆典勋章

14F
发表于 2016-10-23 23:23:18 IP属地江苏 来自手机 |只看该作者
lnyx328328 发表于 2016-10-23 20:54
哈哈哈 其实思路都一样 我就是更加的简单粗暴 直接修改 USBInjectAll。这样就不用动dsdt 和 制作ssdt了

不错的思路,精简引导文件和 kext 数量,我之后也试试。

Rank: 9

UID
262174
帖子
3147
PB币
260
贡献
0
技术
197
活跃
1896
15F
发表于 2016-10-23 23:30:42 IP属地重庆 来自手机 |只看该作者
不错的文章,支持一下

Rank: 2Rank: 2

UID
4809396
帖子
221
PB币
367
贡献
0
技术
0
活跃
270
16F
发表于 2016-10-24 01:34:03 IP属地四川 |只看该作者
谢谢分享。学习了。

Rank: 5Rank: 5Rank: 5

UID
494607
帖子
924
PB币
880
贡献
0
技术
0
活跃
460
17F
发表于 2016-10-24 09:44:35 IP属地云南 |只看该作者
如果打上解除 15 个 USB 口限制的 Patch了,那还需要USBInjectAll和SSDT吗?

Rank: 5Rank: 5Rank: 5

UID
494607
帖子
924
PB币
880
贡献
0
技术
0
活跃
460
18F
发表于 2016-10-24 09:52:49 IP属地云南 |只看该作者
用遮盖器躲避遮盖的目的不就是为了解除15个端口限制吗?用SSDT的目的不也是为了躲避遮盖吗?用Path不也是为了解除15口限制吗?那也就是说这三种做法的目的是一样的啊,那应该这三种办法只用其中之一就行了吧?

Rank: 5Rank: 5Rank: 5

UID
985276
帖子
850
PB币
1751
贡献
0
技术
19
活跃
927
19F
发表于 2016-10-24 10:20:18 IP属地北京 |只看该作者
mark。。
前置USB3.0接口之前试了好多方法都是USB2.0,后来win下也发现只能识别为USB2.0。
后来商家说线不行,所以识别不了。。。TM不早说。。。

Rank: 5Rank: 5Rank: 5

UID
1522039
帖子
463
PB币
1204
贡献
0
技术
22
活跃
961

十一周年 我是大学生! 8周年庆典勋章

20F
发表于 2016-10-24 12:44:40 IP属地江苏 |只看该作者
梦水乡 发表于 2016-10-24 09:52
用遮盖器躲避遮盖的目的不就是为了解除15个端口限制吗?用SSDT的目的不也是为了躲避遮盖吗?用Path不也是为 ...

可以这么理解,打 Patch 其实是一种取巧省事的办法,指不定哪天一更新就失效了。
从原理上理解 Apple 新的 USB 限制解法,虽然麻烦,但是一劳永逸。
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛