Contribute
Register

The New Beginner's Guide to USB Port Configuration

Hi @UtterDisbelief, I use Asus Z170 Deluxe for my build and followed your guide, but the ports I deactivated HS03, HS04, HS08, HS09, HS10, HS13, HS14 are still active after reboot as you can see on the screenshots attached below. Can you point out what's wrong?

I even tried the SSDT-3.aml file @beelzebozo posted for his Asus Z170 Deluxe system and those ports are still active.

Thanks.
I only have 7 ports active.
 

Attachments

  • Screen Shot 2020-04-04 at 10.59.01 AM.png
    Screen Shot 2020-04-04 at 10.59.01 AM.png
    230.2 KB · Views: 53
That's my /CLOVER/ACPI/patched folder.

I use these patches. Some may be N/A.
<key>Patches</key> <array> <dict> <key>Comment</key> <string>HDAS -&gt; HDEF</string> <key>Disabled</key> <false/> <key>Find</key> <data>SERBUw==</data> <key>Replace</key> <data>SERFRg==</data> </dict> <dict> <key>Comment</key> <string>_OSI -&gt; XOSI</string> <key>Disabled</key> <false/> <key>Find</key> <data>X09TSQ==</data> <key>Replace</key> <data>WE9TSQ==</data> </dict> <dict> <key>Comment</key> <string>SAT0 -&gt; SATA</string> <key>Disabled</key> <false/> <key>Find</key> <data>U0FUMA==</data> <key>Replace</key> <data>U0FUQQ==</data> </dict> <dict> <key>Comment</key> <string>Change XHC1 to XHC_</string> <key>Disabled</key> <false/> <key>Find</key> <data>WEhDMQ==</data> <key>Replace</key> <data>WEhDXw==</data> </dict> <dict> <key>Comment</key> <string>HECI -&gt; IMEI</string> <key>Disabled</key> <false/> <key>Find</key> <data>SEVDSQ==</data> <key>Replace</key> <data>SU1FSQ==</data> </dict> <dict> <key>Comment</key> <string>change GFX0 to IGPU</string> <key>Disabled</key> <false/> <key>Find</key> <data>R0ZYMA==</data> <key>Replace</key> <data>SUdQVQ==</data> </dict> <dict> <key>Comment</key> <string>change PEGP to GFX0</string> <key>Disabled</key> <false/> <key>Find</key> <data>UEVHUA==</data> <key>Replace</key> <data>R0ZYMA==</data> </dict> <dict> <key>Comment</key> <string>change EC0 to EC</string> <key>Disabled</key> <false/> <key>Find</key> <data>RUMwXw==</data> <key>Replace</key> <data>RUNfXw==</data> </dict> </array>
 

Attachments

  • patched.zip
    5.6 KB · Views: 47

Yes :thumbup:

There are a few things about the config.plist and USBPorts.kext to note:

USBPorts.kext has an entry in the config.plist for an executable. It doesn't have one. So that needs removing - pretty much like BrcmBluetoothInjector.kext above it -

Kexts.png


The data in the USBPorts.kext shows system-definition of 17,1. Is this the same as your PC?

All ports are set as internal do you not wish to use external ports?

And of course you have the ASMedia third-party chipset configured in USBPorts.kext too. These USB3 ports will have associated USB2 ports (HS**) so they appear, but this sub-system is not configurable.

So what to do?

Correct the config.plist.

Use Hackintool to remove the ASMedia controllers, then configure your other ports correctly (temporarily using USBInjectAll.kext and the Kernel - XhciPortLimit Quirk to open them all up) for location and type and export a new USBPorts.kext :thumbup:.
 
It worked, @UtterDisbelief. I learned a lot about USB Port configuration from you. I owe you one.

I'm curious, this time when I load the USBInjectAll.kext with the right config.plist file, those PXSX ports from ASMedia controllers were not visible. Was the wrong entry on the config.plist causing the problem in the first place?

Thanks again.
 

Attachments

  • Screen Shot 2020-04-05 at 08.18.43.png
    Screen Shot 2020-04-05 at 08.18.43.png
    752.9 KB · Views: 60
  • Screen Shot 2020-04-05 at 08.17.34.png
    Screen Shot 2020-04-05 at 08.17.34.png
    628.8 KB · Views: 59
Last edited:
I've followed the instructions to the tee, before the reboot, I see this and all my USB ports work perfectly, I can plug/unplug to any physical port:
Screenshot 2020-04-05 at 16.45.32.png


So I disable the Clover patch, I remove the USBInjectAll.kext, put USBPorts.kext instead of it. I reboot, and see this:

Screenshot 2020-04-05 at 16.57.53.png

The USB2 ports are gone and when I plug in a card reader to case USB3 port, nothing happens, half of the ports stop working.

I've attached the USBPorts.kext for reference

Any ideas?

EDIT: When I run this I see some old rehabman kext is coming from.. somewhere, it is not in /Volumes/EFI Or /Library or /System, where could it be coming from??

Code:
Mac-Pro.local ➜  Tether  sudo kextstat | grep -i inject
   18    0 0xffffff7f8131f000 0x4000     0x4000     com.rehabman.driver.USBInjectAll (0.6.5) A63DACD5-10FE-3A1C-BCB1-4EEF5308B7CC <13 12 5 3>
 

Attachments

  • USBPorts.kext.zip
    1.7 KB · Views: 51
Last edited:
EDIT: When I run this I see some old rehabman kext is coming from.. somewhere, it is not in /Volumes/EFI Or /Library or /System, where could it be coming from??
Make sure it's also deleted out of /S/L/E and L/E. You can then use Hackintool to "Rebuild KextCache and Repair Permissions"
 
Last edited:
I've followed the instructions to the tee, before the reboot, I see this and all my USB ports work perfectly, I can plug/unplug to any physical port:
View attachment 459857

So I disable the Clover patch, I remove the USBInjectAll.kext, put USBPorts.kext instead of it. I reboot, and see this:

View attachment 459858
The USB2 ports are gone and when I plug in a card reader to case USB3 port, nothing happens, half of the ports stop working.

I've attached the USBPorts.kext for reference

Any ideas?

EDIT: When I run this I see some old rehabman kext is coming from.. somewhere, it is not in /Volumes/EFI Or /Library or /System, where could it be coming from??

Code:
Mac-Pro.local ➜  Tether  sudo kextstat | grep -i inject
   18    0 0xffffff7f8131f000 0x4000     0x4000     com.rehabman.driver.USBInjectAll (0.6.5) A63DACD5-10FE-3A1C-BCB1-4EEF5308B7CC <13 12 5 3>


Hi there

Also a couple of notes:

No, your USB2 ports are still there in the second screengrab = HS** etc.

Although I'm not certain without seeing IORegistryExplorer, the SS** ports all have the same Location ID so this makes me think they are actually attached to the ASMedia hubs, not Intel ports.

Conclusion is, USBInjectAll is still active, maybe cached as @headkaze points out :thumbup:
 
Back
Top