Contribute
Register

The New Beginner's Guide to USB Port Configuration

I am not new at all in hackintoshing, though not as knowledgeable as most people on here ;) I used a second hand build because of lazyness to be honest ! I have less and less time to play with hackintoshes and my main build is my work horse, so when I needed to upgrade I went the fast route. However i understand the build that was made so by Aldaro, and all his choices made perfect sense, I would have done the same build more or less.
I guess i will live with 2 front slow usb ports, not that of a big problem! The guide by rehabman is so rich and precise it has always intimidated me!
I just tried a trick, i plugged a pci usb 3 card that also has an internal usb 3 header, and none of these ports worked, though they are seen by hackintool. Maybe it is a bit old, it was use when Yosemite came out...
It will remain a mystery ! Thanx for your help anyways, as always this forum is full of helping comrades ;)
 
Hi, I am following your steps. But when I finished the first step: "Step 1 - Install the USBInjectAll.kext and a Port-Limit Removal Patch" and reboot, I cann't use my USB3. Then what should I do? Thanks!
 
Hello @UtterDisbelief! Thanks so much for this write up. Just did a clean install of Catalina and decided to tackle the USB issue for the first time ever. I'm a bit confused about some things on my motherboard, wondering if you could help.

Not sure if I should post here or start a new thread. I've attached screenshots of Hackintool, Clover Configurator, my Clover/kexts/Other folder & my config.plist file (anything else you need I'll get when I get home from work tonight). I did the port limit removal kext patches and the EHC1 & EHC2 renames in Clover Configurator.

I have a Gigabyte GA-Z97X-Gaming G1 motherboard. It has the following USB ports:
(2) USB 3.0 front (off the internal header)
(2) USB 3.0 rear
(2) USB 2.0 rear
(4) USB 2.0 internal - will remain unused
(4) USB 3.0 rear - unsupported Renesas chipset - not working, and I don't need them to

Ignoring the Renesas and internal 2.0 ports, neither of which I can test/map anyway, here are the things I cannot figure out.

1) in the screenshots, the only thing physically plugged in is the receiver for my wireless keyboard. Why are there four "IOUSBHostDevice" showing active? What do I do with them? Keep? Remove?

2) in Hackintool, I can map the rear 2.0 ports fine. I can map the front two physical ports separately with a USB 2.0 & 3.0 flash drive just fine. However, the two rear USB 3.0 ports work just fine in macOS (mounting the USB drives, reading, writing, using a USB web cam, etc) but never show up as active in Hackintool. So I have no idea their names/numbers are.

The maps for the front USB ports are:
As 2.0: EH01 HP11 0x1D110000, EH01 HP12 0x1D120000
As 3.0: XHC SS01 0x14F00000, XHC SS02 0x14000000

The maps for the two rear 2.0 ports are: EH02 HP25 0x1A150000, EH02 HP26 0x1A160000

Any help with those two issues would be greatly appreciated.

Thanks!
 

Attachments

  • config.plist
    6.2 KB · Views: 63
  • Clover Configurator 1.png
    Clover Configurator 1.png
    786.4 KB · Views: 48
  • Clover Configurator 2.png
    Clover Configurator 2.png
    609.7 KB · Views: 40
  • Clover Configurator 3.png
    Clover Configurator 3.png
    622.2 KB · Views: 41
  • Clover Configurator 4.png
    Clover Configurator 4.png
    450.8 KB · Views: 39
  • Hackintool Screenshot 1.png
    Hackintool Screenshot 1.png
    341.2 KB · Views: 49
  • EFI-Clover-kexts-Other.png
    EFI-Clover-kexts-Other.png
    158.3 KB · Views: 52
  • Hackintool Screenshot 2.png
    Hackintool Screenshot 2.png
    342.1 KB · Views: 41
Hello @UtterDisbelief! Thanks so much for this write up. Just did a clean install of Catalina and decided to tackle the USB issue for the first time ever. I'm a bit confused about some things on my motherboard, wondering if you could help.

Not sure if I should post here or start a new thread. I've attached screenshots of Hackintool, Clover Configurator, my Clover/kexts/Other folder & my config.plist file (anything else you need I'll get when I get home from work tonight). I did the port limit removal kext patches and the EHC1 & EHC2 renames in Clover Configurator.

I have a Gigabyte GA-Z97X-Gaming G1 motherboard. It has the following USB ports:
(2) USB 3.0 front (off the internal header)
(2) USB 3.0 rear
(2) USB 2.0 rear
(4) USB 2.0 internal - will remain unused
(4) USB 3.0 rear - unsupported Renesas chipset - not working, and I don't need them to

Ignoring the Renesas and internal 2.0 ports, neither of which I can test/map anyway, here are the things I cannot figure out.

1) in the screenshots, the only thing physically plugged in is the receiver for my wireless keyboard. Why are there four "IOUSBHostDevice" showing active? What do I do with them? Keep? Remove?

2) in Hackintool, I can map the rear 2.0 ports fine. I can map the front two physical ports separately with a USB 2.0 & 3.0 flash drive just fine. However, the two rear USB 3.0 ports work just fine in macOS (mounting the USB drives, reading, writing, using a USB web cam, etc) but never show up as active in Hackintool. So I have no idea their names/numbers are.

The maps for the front USB ports are:
As 2.0: EH01 HP11 0x1D110000, EH01 HP12 0x1D120000
As 3.0: XHC SS01 0x14F00000, XHC SS02 0x14000000

The maps for the two rear 2.0 ports are: EH02 HP25 0x1A150000, EH02 HP26 0x1A160000

Any help with those two issues would be greatly appreciated.

Thanks!


Hi there.

The first thing you need to do is remove the FakePCIID_XHCIMux.kext and rebuild your kext caches using Terminal command: sudo kextcache -i /

Then reboot and take another look.

This will clear-up the confusion of ports and hopefully the ones that remain wil be more understandable.

The "IOUSBHostDevice" entries are "hooks" or hubs for other ports. You have a good grasp of what those Renesas ports are. They actually "attach" to the EHC controllers to provide the USB3 functionality to otherwise USB2 ports. You've done your research so know that there are only 2x Intel USB3 ports on the back-panel, with 2x on an internal header.

Third-party chipsets, like the Renesas one, can cause confusion when they don't simply provide USB3 and USB2 ports but "hook" onto pre-existing USB2 ports, as in this case.

Sorry that sounds confusing. I think you understand, from what you've said.

You can visualise the connections in more clarity with IORegistryExplorer.

FakePCIID_XHCIMux.kext is a particular solution for a particular problem and I do not think it helps here.

So to answer:

1) keep them.

2) Check again once you have removed FakePCIID_XHCIMux.kext.

:)
 
Hi there.

The first thing you need to do is remove the FakePCIID_XHCIMux.kext and rebuild your kext caches using Terminal command: sudo kextcache -i /

Then reboot and take another look.

This will clear-up the confusion of ports and hopefully the ones that remain wil be more understandable.

The "IOUSBHostDevice" entries are "hooks" or hubs for other ports. You have a good grasp of what those Renesas ports are. They actually "attach" to the EHC controllers to provide the USB3 functionality to otherwise USB2 ports. You've done your research so know that there are only 2x Intel USB3 ports on the back-panel, with 2x on an internal header.

Third-party chipsets, like the Renesas one, can cause confusion when they don't simply provide USB3 and USB2 ports but "hook" onto pre-existing USB2 ports, as in this case.

Sorry that sounds confusing. I think you understand, from what you've said.

You can visualise the connections in more clarity with IORegistryExplorer.

FakePCIID_XHCIMux.kext is a particular solution for a particular problem and I do not think it helps here.

So to answer:

1) keep them.

2) Check again once you have removed FakePCIID_XHCIMux.kext.

:)

OK, will do. Thanks! I will report back after I see what happens.

So quick clarification for my own curiosity - the Renesas chipset USB ports still show up in Hackintool even though they are inactive in macOS?

P.S. - I did use IORegistryExplorer at first when I was going to try and create an SSDT. Then I found this guide and scrapped the SSDT route. I'll take a look at it again just to see what things look like.
 
OK, will do. Thanks! I will report back after I see what happens.

So quick clarification for my own curiosity - the Renesas chipset USB ports still show up in Hackintool even though they are inactive in macOS?

P.S. - I did use IORegistryExplorer at first when I was going to try and create an SSDT. Then I found this guide and scrapped the SSDT route. I'll take a look at it again just to see what things look like.


Sometimes Hackintool does show third-party chipsets, sometimes it doesn't. Not sure why. If you check the top panel in the USB pane - as far as I could see in your screengrabs, there were no scroll-bars to indicate further details, so it does look as though the Renesas controller is not being shown. See if anything changes with the kext removal and reboot.

Hackintool as a great suite of really useful utilities and because it presents it's data so clearly was why it was chosen for the Beginner's Guide. My previous "old-fashioned" guide was a bit harder to use and has the disadvantage that it may stop working going beyond Catalina. Hackintool's USBPorts.kext should have a longer life.

You see more with IORegistryExplorer - even though it uses the same basic data as Hackintool - because it goes deeper.:thumbup:
 
Sometimes Hackintool does show third-party chipsets, sometimes it doesn't. Not sure why. If you check the top panel in the USB pane - as far as I could see in your screengrabs, there were no scroll-bars to indicate further details, so it does look as though the Renesas controller is not being shown. See if anything changes with the kext removal and reboot.

Hackintool as a great suite of really useful utilities and because it presents it's data so clearly was why it was chosen for the Beginner's Guide. My previous "old-fashioned" guide was a bit harder to use and has the disadvantage that it may stop working going beyond Catalina. Hackintool's USBPorts.kext should have a longer life.

You see more with IORegistryExplorer - even though it uses the same basic data as Hackintool - because it goes deeper.:thumbup:

Well, no luck. I removed FakePCIID_XHCIMux.kext, rebuilt the kext cache, rebooted. Things were much cleaner in Hackintool --> USB. Only things active were my keyboard receiver and four IOUSBHostDevice (an EH01, an EH02, an XHC HS and an XHC SS) which all made sense. However, the two rear Intel USB ports, while working in macOS, are still not showing up as active in Hackintool when I plug various things in. Even when refreshing, clearing and refreshing, etc. I also tried the following:

- unplugging my SATA DVD drives
- enabled EHC handoff in the BIOS
- switched XHC handoff in the BIOS from Smart Auto to Auto
- could not find anything in my BIOS to do with disabling any serial ports

None of the above helped. I did not get a chance to try IORegistryExplorer last night to see if it shows my rear USB ports as active. Beyond that, any other suggestions?
 
Well, no luck. I removed FakePCIID_XHCIMux.kext, rebuilt the kext cache, rebooted. Things were much cleaner in Hackintool --> USB. Only things active were my keyboard receiver and four IOUSBHostDevice (an EH01, an EH02, an XHC HS and an XHC SS) which all made sense. However, the two rear Intel USB ports, while working in macOS, are still not showing up as active in Hackintool when I plug various things in. Even when refreshing, clearing and refreshing, etc. I also tried the following:

- unplugging my SATA DVD drives
- enabled EHC handoff in the BIOS
- switched XHC handoff in the BIOS from Smart Auto to Auto
- could not find anything in my BIOS to do with disabling any serial ports

None of the above helped. I did not get a chance to try IORegistryExplorer last night to see if it shows my rear USB ports as active. Beyond that, any other suggestions?


Hi there,

Not without more to go on, no.

Perhaps consider uploading an IORegistryExplorer *.ioreg export file to examine.
 
OK, here you go. ioreg file attached. I also plugged in a USB 2.0 drive to the back USB 3.0 port again, and accidentally found it in IORegistryExplorer when I picked IOUSB from the top left drop-down menu. See attached screenshot 1. I then switched back the menu to IOService and figured out where the USB drive was showing up. It was buried under IOResources rather than under AppleACPIPlatformExpert like all of the other USB ports. See attached screenshot 2. I have no idea what all of that means, or why the rear two USB ports are not grouped with the others. Incidentally, the Location ID of the missing port was 0x14910000. I checked, that does not show up in Hackintool.
 

Attachments

  • GA-Z97x-Gaming G1.ioreg
    9.8 MB · Views: 38
  • IORegistryExplorer screenshot 1.png
    IORegistryExplorer screenshot 1.png
    164.8 KB · Views: 26
  • IORegistryExplorer screenshot 2.png
    IORegistryExplorer screenshot 2.png
    167.9 KB · Views: 33
Back
Top