Contribute
Register

The New Beginner's Guide to USB Port Configuration

Okay, that doesn't look to bad considering :thumbup:

Although this Guide is a Beginner's Guide based on Hackintool, I also use IORegistryExplorer to check what is going on. It's more technical but you can get greater insight. Let me show you ...

Here is your XHC controller tree. You can see which devices you have attached. Also visible are the hubs attached to three of the ports. As Gigabyte did not spec any Intel ports being on "hubs" and only the Renesas ones, we can assume HS03 and HS05 must be those ports "boosted" to USB3 standards by the Renesas chip. Quite where their output ports are physically located is a different matter.

Quite why SS03 is in there too, from what I have to go on at this time, I can't offer any insight.

Looking the EHC controller ...

... you can see there are 6x hub ports attached to the EH02 controller. EH01 provides only 2x direct Intel ports. Because Renesas only provides 4x boosted ports this is somewhat confusing and may be due to how your configuration has been set up (again I have no insight with without knowing more).

One reason why I say in the Guide, give preference to XHC over EHC on a modern version of macOS. It is easier to understand.

Note: In your case ports PR11, PR12 and PR21 are the only ports defined as Internal, so ensure your bluetooth adapter is connected to one of these. Strangely PR21 does not show up on IOReg, so I would steer clear of it (unless IOReg and Hackintool were both run from within different configuration tests).

If you are happy the ports you have "discovered" are what you need and work okay, it's your choice how much deeper you wish to go.

:)
Sir,
With that said. I presume I can leave them as it is, right ?. Because of limitation of understanding I would not want to dig any deeper if that would be reasonable work. Thank you so much for your time and effort. Happy Holiday to you and your family.
 
Last edited:
I just found this thread, and I have a question. I used a previous guide about 6 months ago, and it appears to have worked, at least according to Hackintool.
However, what I have in my Clover directory is this:
ACPI/patched
SSDT_USB.aml
SSDT_EC.aml
SSDT_USBX.aml

My Kexts/other has only FakeSMC.kext in it.

should I simply export my working hackintool list, which creates
USBPorts.kext
SSDT-UIAC.aml
SSDT-USBX.aml

and drop the USBPorts.kext in to "other"?

What do I do with the other two "aml" files?

Do I remove the .amls currently found in my ACPI/patched directory?

Comments or Suggestions? (Currently running 10.14.6)

and.... Happy Holidays!
 
I just found this thread, and I have a question. I used a previous guide about 6 months ago, and it appears to have worked, at least according to Hackintool.
However, what I have in my Clover directory is this:
ACPI/patched
SSDT_USB.aml
SSDT_EC.aml
SSDT_USBX.aml

My Kexts/other has only FakeSMC.kext in it.

should I simply export my working hackintool list, which creates
USBPorts.kext
SSDT-UIAC.aml
SSDT-USBX.aml

and drop the USBPorts.kext in to "other"?

What do I do with the other two "aml" files?

Do I remove the .amls currently found in my ACPI/patched directory?

Comments or Suggestions? (Currently running 10.14.6)

and.... Happy Holidays!

Hi there.

No, if your previous configuration worked, no need to put yourself through the wringer again, until you change motherboards :thumbup:

Hackintool actually covers both the "old" and the new guides. You can either keep USBInjectAll.kext and install the SSDT*.* files - OR - remove them and only use USBPorts.kext. Basically Hackintool is giving you both options.

The reason for the new guide is because of Apple's up-coming restrictions on any third-party kexts being installed which may, possibly, impact on USBInjectAll.kext. The new method is designed to (hopefully) get around this.

:)
 
Final sanity check, if I may: can I lose the SSDT_EC.aml (power injection) if I switch to the .kext. Seems to be working fine without it, but , like I said: sanity check.

Thanks again.

That's a good question. USBInjectAll.kext is only looking for one configuration file, usually SSDT-UIAC.aml although SSDT-USB.aml and others work too. Generally if Hackintool provides an SSDT-EC.aml, you need it :thumbup:. It can also help prevent other unrelated problems. However, as you say, some configurations work fine without. Mine is one of them.
 
Last edited:
Good to know: Hackintool did -not- provide the EC ssdt, and so far my machine is running fine with USBInjectAll.kext and all the .aml files mentioned above removed, and using only the Hackintool-created kext. It seems less "messy" to my mind, and so far, so good.

Thanks again...
 
Well shoot: it's not working to impose the port limit.
Here's what I have now: -just- the USBPorts.kext in Other. Running hackintool shows 22 ports.
What I had before: the .aml files in ACPI patched and USBInJect in /library/extensions: that worked.


Did I read the instructions wrong? I thought it was
----EITHER
USBPorts.kext
----OR
USBInjectAll.kext
SSDT-UIAC.aml
SSDT-USBX.aml


Obviously I can revert, but I'm curious if I did something wrong, regarding using USBPorts.kext. Do I need USBInjectall? or do I -also- need the hackintool-created .aml files?

Suggestions?

Thanks.
 
Well shoot: it's not working to impose the port limit.
Here's what I have now: -just- the USBPorts.kext in Other. Running hackintool shows 22 ports.
What I had before: the .aml files in ACPI patched and USBInJect in /library/extensions: that worked.


Did I read the instructions wrong? I thought it was
----EITHER
USBPorts.kext
----OR
USBInjectAll.kext
SSDT-UIAC.aml
SSDT-USBX.aml


Obviously I can revert, but I'm curious if I did something wrong, regarding using USBPorts.kext. Do I need USBInjectall? or do I -also- need the hackintool-created .aml files?

Suggestions?

Thanks.

Yes, your summation is correct. That's how you do it. No, you don't need USBInjectAll and USBPorts. Nor should you still have a port-limit removal patch. So something has gone awry.

Upload something - USBPorts.kext - SSDT-UIAC.aml or even an IORegistryExplorer export - and let me take look :thumbup:
 
Thank you for your kind offer. I've attached the USBNPorts.kext, and my config.plist (lightly edited) along with a screenshot that shows the weirdness: IORegistryExplorer shows 15 ports, but they are incorrect(!) while Hackintool shows 22 ports. (Highlited in blue are the ones I delete, and hit save to create the .amls and .kext. The unhighlited ones are the ones I want to keep, but don't match IORegistryExplorer.
seriously confused by this! :)
 

Attachments

  • kentval.zip
    1.7 MB · Views: 93
Back
Top