Contribute
Register

The New Beginner's Guide to USB Port Configuration

So to clarify (in theory) if you have EH01 and EHO2 controllers you could have 15 ports for each giving a total of 30?
That's correct in theory but may not work in reality. As for my H97 chip, I have XHC, EH01 and EH02, I couldn't use my SS ports in USB3.0 speed without making port config. Tip for this chip, leave hubs from EH01 and EH02 (PR01 and PR11 only. PR21 shown as hub too but it's not, you can delete it) delete all other PR ports.
The limits are per controller, so every slot you plug a controller into would give you 15 more ports...

In theory :cool:

Hi all.

That's what it looks like - on paper. The reality is different.

You can argue - and many have done - that a pre-Skylake chipset like the Z97 has three controllers XHC, EH01 and EH02, for a potential total of 45-ports, using this logic. However, as @Archangeliques points out, what tends to happen is PR01 and PR02 (or PR11, or PR21) are seen to have 'hubs' hanging off them with the other 8x and 6x ports (the numbers vary). macOS only sees hub ports, the 'parents' not the 'children', making just 2x ports. Even if the EHCI ports could be included in the limit, you would only reach 30-ports because the older system shares the total over the two controllers, usually 8 and 6, or 7 and 5, or 6 and 4, depending on chipset type. (The second 'hub' often counts as a port. Don't know why).

What is more, third-party controllers like ASMedia and Renesas and NEC and CalDigital etc., can indeed be used on PCI-e cards in MacPros but they are not directly controlled. They are not Intel and so they do not count in the nominal 15. You can have 50-ports on PCI-e cards and within the limitations of power to PCI-e and the number of lanes, all ports could work, but would need bespoke drivers to be properly controlled.

:)
 
Last edited:
I see so it’s like if you buy one hamburger for the price of two you get one free, right?

Incidentally, I've done some more work on your suggestion for renaming the ports in IORegistryExplorer. :thumbup: It's being reviewed presently and might be good for another topic - Advanced Jiggery-Pokery of USB Ports.

It has been an eye-opener and I have to thank you for that :thumbup:
 
Hi Folks, I've been searching around, but can't find an answer...

I am finishing up a Lenovo M93p. All is working. I ran through the 20 step mapping procedure outlined by Hackintool and I can read/write USB2 and USB3 devices on all ports.

However...in my USB list, I have a number of "HP##" ports along with the HS and SS ports. I can't figure out what they are, or if they "matter".

Ideas?
 
Hi Folks, I've been searching around, but can't find an answer...

I am finishing up a Lenovo M93p. All is working. I ran through the 20 step mapping procedure outlined by Hackintool and I can read/write USB2 and USB3 devices on all ports.

However...in my USB list, I have a number of "HP##" ports along with the HS and SS ports. I can't figure out what they are, or if they "matter".

Ideas?

I ran into the same issue I would delete them but they came back after a reboot and using the generated kext. They are probably internal hubs or connectors.
is that a M93p tiny?
 
I ran into the same issue I would delete them but they came back after a reboot and using the generated kext. They are probably internal hubs or connectors.
is that a M93p tiny?

Yes! This is a Tiny. So there doesn't seem to be any detrimental effects. We'll see how it goes.
 
Yes! This is a Tiny. So there doesn't seem to be any detrimental effects. We'll see how it goes.

Check out my guide I have a USBKext that names the ports for you. In the Installation guides section for Catalina.
 
First and foremost, you all are absolute legends. I'm half-embarrassed, half-terrified to post, as I know the resources are all here and the documentation is thorough -- yet still, I cannot seem to connect the dots to get to a well-functioning USB config on my Gigabyte (S9) GA-Z97M-D3H. As I'm approaching another build (and handing this one, once it's locked down in the USB-regard, to my wife), I wanted to finally complete the work I've started and stopped a hundred times over. So here goes.

I'm currently back at square one -- running Catalina, things generally functional, but USB is definitely not right. I've increased the port limits, performed my EH renames (appears to be OK), and have USBInjectAll installed. I have tried both with and without FakePCIID & FakePCIID_XHCIMux; I think *with* my luck has been better getting closer to ascertaining what ports are active.

Even after disabling several ports that seem to be inactive, other ports still fail to register in any tool I'm using -- IORegistryExplorer, USBMap, Hackintool -- and so I know I'm still missing some step or am approaching from the wrong angle.

This is where I'm at presently. I apologize for being utterly confused; this USB business has truly been the bane of my Hackintosh existence and any nudge in the right direction would be massively appreciated.

As I know it's customary, I'm attaching my Clover folder (no themes) and a couple screen shots from IORegistryExplorer and USBMap to give a view of what I'm seeing at this stage.

Thanks for even reading! ^__^
 

Attachments

  • myz_Clover_noThemes.zip
    2.3 MB · Views: 47
  • EH01.jpg
    EH01.jpg
    796.5 KB · Views: 61
  • EH02.jpg
    EH02.jpg
    796.4 KB · Views: 59
  • XHC.jpg
    XHC.jpg
    803.9 KB · Views: 65
  • USBMap Output.jpg
    USBMap Output.jpg
    808.8 KB · Views: 61
I'm currently back at square one -- running Catalina, things generally functional, but USB is definitely not right. I've increased the port limits, performed my EH renames (appears to be OK), and have USBInjectAll installed. I have tried both with and without FakePCIID & FakePCIID_XHCIMux; I think *with* my luck has been better getting closer to ascertaining what ports are active.
You don't need FakePCIID kexts, USBInjectAll is enough (unless you have third-party controllers, correct me if I'm wrong @UtterDisbelief ).

By looking at your USBMap Output, leave hub ports PR11 and PR21 and delete all other PR ports. As for HS and SS ports, you need to be within 15 port limit so either check if any HS or SS ports not active (has no physical ports and if they are internal check if they are not plugged in to any internal or external device / Port Discovery) and delete inactive ones too. If still out of 15 limit then sacrifice some of them.

Deleting hub ports, in your case PR11 and PR21 will cause issues and some other ports (PR, HP, USR etc) will be back after restart. You can check last a few pages of this thread. We already discussed this for H/Z97 chips.

Cheers!
 
You don't need FakePCIID kexts, USBInjectAll is enough (unless you have third-party controllers, correct me if I'm wrong @UtterDisbelief ).

Thanks for the confirmation on FakePCIID; I've been running without it and wasn't sure if that was part of the reason I was running into issues with port speeds or the like. I've restarted the discovery/limitation process with those kexts excluded.

By looking at your USBMap Output, leave hub ports PR11 and PR21 and delete all other PR ports. As for HS and SS ports, you need to be within 15 port limit so either check if any HS or SS ports not active (has no physical ports and if they are internal check if they are not plugged in to any internal or external device / Port Discovery) and delete inactive ones too. If still out of 15 limit then sacrifice some of them.

Deleting hub ports, in your case PR11 and PR21 will cause issues and some other ports (PR, HP, USR etc) will be back after restart. You can check last a few pages of this thread. We already discussed this for H/Z97 chips.

Thanks for the tip! That helps immensely to know that PR11 and PR21 operate as internal hubs; I found that confusing since they showed up as active for multiple physical ports. I've confirmed that those are the only two PR ports that appear as active, so am now noting all of my currently active ports and confirming USB2 and USB3 is routing appropriately.

Again, thanks for the boost of confidence and tips. Hopefully on the road to semi-perfection! ^_^
 
Back
Top