Contribute
Register

USB Ports Mapping, USB 3.0 Asus P9X79pro Help

Status
Not open for further replies.
Joined
Oct 1, 2014
Messages
85
Motherboard
Asus P9X79pro
CPU
i7-3820
Graphics
RX 570
Mac
  1. Mac Pro
I would like somebody to help me resolve the USB mapping process. I am running Big Sur with Opencore. I runned the USBMap mentioned in this link —I went half way of what is explained on that site— and here are the screenshots. I would like to have the front USB 3.0 working. The ASMEDIA controllers are enabled in the mobo bios.
I understand that several ports should be toggled off. I don't know how to do this.
Thanks
 
You need to start by understanding how many USB ports are available on your motherboard and then how they should be configured.

These are the USB ports on your Asus P9X79 Pro motherboard:

Screenshot 2022-08-05 at 22.55.15.png


This tells us that your motherboard has a total of 24 USB ports available. 12 x ports from the USB3 and 12 x ports from the USB2.

You now need to remember that Apple have set a 15 port Limit. So you will need to drop 9 ports.

It is likely that the 6 x physical USB2 ports on the back panel and 6 x ports from the 3 x motherboard headers are split between the EH01 and EH02 controllers. How they are split is for you to discover.

The ASMedia ports will be dealt with by an XHC controller, which isn't showing in your USB port discovery screenshot. Are you using an XHCI to XHC or XHC1 to XHC rename patch in your config.plist?

What does Hackintool > USB tab show for your USB ports? It can often be easier to undertake the USB port discovery using your IOReg and Hackintool app.

I am assuming you are running a version of macOS Big Sur that is newer than 11.3, so the OpenCore Kernel > Quirks > XhciPortLimit entry is not working, even if you have enabled it in your config.plist.

The Screenshot from your IOReg is next to useless. If you are going to search for USB ports use 'USB' as the search terminology.


The two screenshots below were taken from your motherboard manual. They show the physical location of the USB3 and USB2 header ports.

Screenshot 2022-08-05 at 22.56.39.png USB Header - 4 ports (2 x USB2 & 2 x USB3)

Screenshot 2022-08-05 at 22.56.54.png USB2 headers - max 6 x ports, you may not be using all 3 headers, or both ports from the 3 x headers.

This is a screenshot showing the layout and details of the ports on the back panel of your motherboard.

Screenshot 2022-08-05 at 22.57.59.png Items 4, 6, 8 and 9 relate to your physical USB ports.

This image shows ports under item 9 as blue, this is likely an error. As the 2 x ports are USB2 physical ports not USB3.

Connector Types:
You need to remember that each USB3 physical port also has a companion USB2 (virtual) port.

The 4 x physical USB3 ports (and the 4 x companion USB2 ports) need to be set with the Connector Type (3) or 'USB3'.​
The 2 x USB3 motherboard header ports (and 2 x companion USB2 ports) need to be set with the Connector Type (3) or 'USB3'​
The 6 x USB2 physical ports need to be set with the Connector Type (0) or 'USB2'.​
The 6 x USB2 ports from the motherboard headers need to be set with the Connector Type (255) or 'Internal'.​
You need to use the above as your check list when setting the connector type for each port discovered.

It is essential that you get the connector type correct for each port. If you don't you can end up with Sleep, instant reboot and other issues.

I would recommend you post a copy of your IOReg. Use this guide for how to do that, and make sure you are using a version of IORegistryExplorer that is compatible and others can open your IOReg.


Post a screenshot of your Hackintool > USB tab, yes I said this before but that was a while ago and you might have forgot!

Confirm which USB rename patches you are using, I have assumed you are using OpenCore.
 
Thank you Edhawk for this thorough explanation, I appreciate your time. I will take the time to digest every step and reply. Thank you again.
 
OpenCore Kernel > Quirks > XhciPortLimit was not enabled. Now I switched to “True”, but still shows a large number of ports.

In regards to renaming patch this is what I found —I can't recall how and from where did I get them. (Probably I copied from someone with the same MOBO who posted his/her config.plist)
Captura de Pantalla 2022-08-05 a la(s) 10.04.41 p. m..png

If you know a better or correct renaming patch please let me know.


This is what Hackintool USB shows
Captura de Pantalla 2022-08-05 a la(s) 10.17.00 p. m..png

I hope the IOReg can be opened and reviewed by you or anyone else
Thank you
 

Attachments

  • Mac-i7-3820.ioreg
    5.3 MB · Views: 52
That Hackintool > USB window shows some encouraging elements.

The HPxx ports are what we would expect to see under the EH01 and EH02 controllers.

I would recommend deleting the UKxx numbered ports, use the '-' minus sign to delete individual ports, just click on a port you want to remove, such as UK09 to UK26 and any others you may find below port HP27 (UK02-UK08?).

You should delete the PR12, PR13, PR14, PR15, PR16, PR17 and PR18 entries. As these are controllers your system doesn't use. Same goes for PR22, PR23, PR24, PR25 and PR26.

You should only retain PR11 and PR21, as these two controllers are used by your system.

The ASMedia USB3 ports are not showing, as expected in your IOReg given the Hackintool screenshot. I am wondering if you have added a third-party USB3 kext to your setup, which is messing with these ports. The usual culprit being GenericUSBXHCI.kext, which stopped being of use when El Capitan was released! I can't see evidence of that particular kext in the IOReg, so maybe not.

There are three ASMedia controllers in your IOReg.

The first PEX1@1C,1 - pci1b21,612@0 is a SATA controller, with no drives attached to either port.

The second is PEX2@1C,2 - pci1b21,1042@0 this is the first USB controller, which is not being activated correctly.

The third is PEX3,1C,@3 - ASMX this is the second USB controller, again not being activated correctly.

The ASMedia 1042 USB ports are natively supported in macOS, there is a kext within macOS that works with these ports. I know this for a fact, as I have the same USB ASMedia ports in a pair of my Hacks. So no additional kexts or patches should be required for these two devices to work.

If you have any USB3 entries in your setup, I would recommend you remove them.

The Rename patches you are using look OK.

If possible I would like you to post a copy of your current working EFI folder, so I can see what is happening and being used.

You need to delete the Serial Number, MLB, ROM and SystemUUID from the config.plist before you post a copy here. Nothing else in the setup is system specific (sensitive) that needs to be hidden/redacted.

Which version of Big Sur are you running, I ask this as the XhciPortLimit quirk stopped working in 11.3 and newer.
 
Hi, thank you so much again !
I am running 11.6.8 (20G730)
Tried to delete those UK and PR ports using Hackingtool, but when I closed the app and opened again those still show up. I don't know if I am doing something wrong. I clicked on the lock icon, and then delete those ports, and tried to close the “lock” but I could not. The version of Hackintool I have is 3.8.7
If you have any USB3 entries in your setup, I would recommend you remove them.
I don't think I have USB3 entries, do you mean in the EFI > Kext folder?
Thanks
 

Attachments

  • Nehedar-EFI.zip
    60 MB · Views: 48
I have deleted those UK and PR ports using Hackintool and exported the SSDT-USBX.aml and placed on the ACPI folder and in Config.plist

Now hackintool shows less ports
Captura de Pantalla 2022-08-07 a la(s) 1.19.22 p. m..png


Later I noticed there is an USBPorts.kext on my desktop; it only contains an info.plist. I tried to attached here, but Tonymacx page says “it seems to be an empty file, try a different file”. Was this generated at the same time I exported from Hackintool > USB ?

I have not included yet this kext on my EFI
Thanks for your help.
 
No you were not doing anything wrong. That is how the App works.

Nothing is saved in permanent memory on the system when making changes in Hackintool. The only time anything is changed/saved is when the USB configuration is 'Exported' and the app creates a number of custom files, based on the USB config you have created.

The SSDT-UIAC.aml or USBPorts.kext, preferably the kext, can then be added to your OpenCore setup, to set your system to use the USB ports you activated. Place USBPorts.kext in /EFI/OC/Kexts folder along with entry for the kext in the config.plist. Reboot and the USB ports contained in the info.plist in the kext will be active in macOS. Well the first 15 ports will.

You don't need to add the SSDT-USBX.aml to your /EFI/OC/ACPI folder and config.plist if you use the USBPorts.kext, as the kext contains the USB power settings for macOS.

As an example the screenshot below shows the 5 files created when the Export option was selected on my Z370 system. These files are created and saved on the Desktop by Hackintool. I just saved them to a specific folder, so they are easier to find.

Screenshot 2022-08-07 at 17.57.07.png
 
Thank you. I removed the SSDT-USBPorts.aml and included the USBPorts.kext (Of course and in Config.plist as well)
Now according to Hackintool these are the ports showing up. There are 20.
Do I still need to remove those HPxx ?
Captura de Pantalla 2022-08-07 a la(s) 3.46.19 p. m..png


And I guess these PEX0, PEX1, PEX2 and PEX3 must be the Asmedia USB 3.0
I have no idea how to configure and make them work
Captura de Pantalla 2022-08-07 a la(s) 3.56.06 p. m..png


Thank you, your help is appreciated !
 
No but you do need to discover which of the 20 ports you are going to use, and then cut it down to 15.

You can ignore the ASMedia ports for now. As they are on a different USB controller so they won't impact on the Intel USB controller, which you will need to reduce to 15 ports.

In the Hackintool image above, it shows you have only 'discovered' 8 x ports, as only 8 are shaded Green in the image.

The other ports may not be available, or ports you don't need to use. The only way to tell which is which, is to plug a USB2 device in to each physical port available on your motherboard and case. See what difference that makes to the ports highlighted in Green. Any that don't turn Green in Hackintool are not being discovered, so they can be removed/deleted and you can export a new USBPorts.kext with just the 15 ports you are going to use in macOS.

We can look in to how to get the ASMedia USB3 ports working once you have sorted out the Intel ports.
 
Status
Not open for further replies.
Back
Top