Contribute
Register

[Guide] Creating a Custom SSDT for USBInjectAll.kext

Assuming the number of ports on XHC are within the 15-port limit, yes.
If not, then you didn't follow the guide correctly.
The ports now showing up in IORegistryExplorer are only the physical ports that work on my computer. I have 14 physical USB ports (6 USB2 (4 of which are internal) and 8 USB3 ports). However, as you pointed out in your guide, the USB3 ports have both HSxx and SSxx assignments. This means that there are 14 HSxx assignments and 8 SSxx assignments. I guess my question is, do the physical ports with both HSxx and SSxx assignments count as one each or two towards the port limit? If two, then I am over the 15 port limit, and I assume, to get under the limit, I would have to exclude some of my working USB ports. Please let me know if my understanding is correct or flawed. Thanks!
 
The ports now showing up in IORegistryExplorer are only the physical ports that work on my computer. I have 14 physical USB ports (6 USB2 (4 of which are internal) and 8 USB3 ports). However, as you pointed out in your guide, the USB3 ports have both HSxx and SSxx assignments. This means that there are 14 HSxx assignments and 8 SSxx assignments. I guess my question is, do the physical ports with both HSxx and SSxx assignments count as one each or two towards the port limit? If two, then I am over the 15 port limit, and I assume, to get under the limit, I would have to exclude some of my working USB ports. Please let me know if my understanding is correct or flawed. Thanks!

You are over the 15-port limit (6+8*2 is 22)
As per post #1, you must sacrifice ports to stay within the 15-port limit.
 
You are over the 15-port limit (6+8*2 is 22)
As per post #1, you must sacrifice ports to stay within the 15-port limit.
I understand. Is it acceptable to sacrifice the HSxx port assignments on the USB3 ports, and if so, would that mean that USB2 devices would not work on those ports, or would that also prevent USB3 devices from working as well?
 
I understand. Is it acceptable to sacrifice the HSxx port assignments on the USB3 ports, and if so, would that mean that USB2 devices would not work on those ports, or would that also prevent USB3 devices from working as well?

I recommend sacrificing HSxx/SSxx in pairs.
You could always try excluding just the HSxx component, but it might cause problems (besides the obvious of USB2 devices not working in that port).
 
I recommend sacrificing HSxx/SSxx in pairs.
You could always try excluding just the HSxx component, but it might cause problems (besides the obvious of USB2 devices not working in that port).
I understand - thank you once again for your help!
 
Assuming the number of ports on XHC are within the 15-port limit, yes.
If not, then you didn't follow the guide correctly.
Can I assume the 15 port limit is part of macOS? MSWindows has no trouble with enabling all of the ports on my computer. I just want to understand the origin of the limit. Thanks.
 
It is a limit coded into Apple's xHCI kexts.
Ok - I am down to 15 ports. I will try removing the 2 port limit patches next. One last question - will this custom SSDT carry over to my Windows installation on this same PC, or will all of my USB ports work? Thanks.
 
Ok - I am down to 15 ports. I will try removing the 2 port limit patches next. One last question - will this custom SSDT carry over to my Windows installation on this same PC, or will all of my USB ports work? Thanks.

The SSDT and USBInjectAll.kext affect only your macOS/OS X installations.
 
Back
Top