Contribute
Register

New install for ASUS TUF Gaming Z790-Plus WiFi D4 w/i7-13700K CPU

Hi everyone. I've been slowly doing this build in my free time. Today, after a successful installation of 13.2.1, I decided to do the USB port mapping after using a USB2 and USB3.2 memory sticks. However, I am a little lost on a few points:
1. All 4 blue USB ports on the 2nd and 3rd row only show up the USB sticks on the desktop. But no description shows up in the 'device' column. So I can't name them by each port. I this because it's a USB hub?
2. The bottom USB-C (10g) does not show up with USBInjectAll.kext. I know I have a 15 port limit. But I would prefer to have one more type C connection than the type A even at the same speed. Anyway to activate this port?
3. Same as above with the internal USB connection. I have a Fenvi FV-T919 on header USB_1011 and a Corsair iCue iH150 Elite Capellix to header USB_1213. But both won't show up in the 'device' column. So I'm not sure if I am removing the correct USB device when choosing the 15 USB ports.
4. Sorry if this is obvious and stupid. After choosing the 15 USB ports and generating the USB kext with Hackintool, the app also generates 2 .dsl and 2 .aml beside the .kext file. Somewhere I read that only a .kext file would be generated, should I replace all files or only the generated .kext file?
Thank you all in advance. Your time and advice is very appreciated!
 

Attachments

  • 1.jpg
    1.jpg
    688.2 KB · Views: 49
  • 2.jpg
    2.jpg
    935.5 KB · Views: 47
  • 3.jpg
    3.jpg
    873.4 KB · Views: 52
Hi everyone. I've been slowly doing this build in my free time. Today, after a successful installation of 13.2.1, I decided to do the USB port mapping after using a USB2 and USB3.2 memory sticks. However, I am a little lost on a few points:
1. All 4 blue USB ports on the 2nd and 3rd row only show up the USB sticks on the desktop. But no description shows up in the 'device' column. So I can't name them by each port. I this because it's a USB hub?
2. The bottom USB-C (10g) does not show up with USBInjectAll.kext. I know I have a 15 port limit. But I would prefer to have one more type C connection than the type A even at the same speed. Anyway to activate this port?
3. Same as above with the internal USB connection. I have a Fenvi FV-T919 on header USB_1011 and a Corsair iCue iH150 Elite Capellix to header USB_1213. But both won't show up in the 'device' column. So I'm not sure if I am removing the correct USB device when choosing the 15 USB ports.
4. Sorry if this is obvious and stupid. After choosing the 15 USB ports and generating the USB kext with Hackintool, the app also generates 2 .dsl and 2 .aml beside the .kext file. Somewhere I read that only a .kext file would be generated, should I replace all files or only the generated .kext file?
Thank you all in advance. Your time and advice is very appreciated!
Good on you for trying to figure it out - I had a friend do mine and said the 4 ports on back mapped out as a hub as your your item1. I had the bottom turned USB-c off item2. The headers are considered internally I was told - ignore it per item3. unknown item 4. Hope that helped ...

Can you please document your process when u get it done (nor now too - lol) - I'ld like to redo mine too!
 
I used Catalina to map mine as there is no 15 port limit as the XhciPortLimit Quirk still works on it. This is what I finished up with. All the external ports work, and I have disabled the internal one so it doesn't interfere with sleep on macOS...
Screenshot 2023-03-26 at 13.29.54.png
 
Last edited:
I used Catalina to map mine as there is no 15 port limit.
do you have a write up/notes/process on how you mapped it out?
 
Yes, I followed the guide on here really...I will get the link.

 
I used Catalina to map mine as there is no 15 port limit...
Is this true?

I'll try to correct this point with the claim that the 15 port per root hub limit is as old as OSX.

The limit is not the you can't see more than 15 ports, it's a limit due to data structures in macOS that leads to unspecified unstable behavior in both the kernel and apps.

Catalina is recommended for port mapping because the Open Core kernel quirk XhciPortLimit = 1 to enable all ports for mapping stopped working after Catalina.

But if you use a mapping approach based on a modern form of injection, like CorpNewt USBmap, or USBToolBox (which is derived from USBmap), XhciPortLimit quirk is not needed.

There's a very long and complicated history about the USBinjectAll.kext which dovetails with this topic, but the lore is difficult to track because the name USBinjectAll got appropriated by some builders for their build-specific config.

In essence everything about USB port mapping comes down to editing a codeless kext (Info.plist) to reflect root hub ACPI names appropriate to a specific SMBIOS, for a subset of ports <= 15 and port connector types correctly specified. The tools help streamline the process, but if you're super savvy you could start with a boilerplate map and edit it by hand.

USBToolbox on Windows is the easiet way to go (assuming Windows) because no setup step is required to enable all ports. Under macOS you use a temporary kext (dummy) produced by the toolbox to enable all ports, make your map, then replace the dummy kext with the finished map. Toolbox handles the details.

Hackintool is an earlier tool that can't produce a dummy and how-tos say to use XhciPortLimit (hence Catalina req), but in principle a properly constructed version of USBInjectAll could work, but if you know enough to do that, you could just edit it to be your map.

There's probably some important detail I've overlooked in this history lesson so take it with caution, but my point is just to provide some clarification of lore in context.

Hth
 
Is this true?

I'll try to correct this point with the claim that the 15 port per root hub limit is as old as OSX.

The limit is not the you can't see more than 15 ports, it's a limit due to data structures in macOS that leads to unspecified unstable behavior in both the kernel and apps.

Catalina is recommended for port mapping because the Open Core kernel quirk XhciPortLimit = 1 to enable all ports for mapping stopped working after Catalina.

But if you use a mapping approach based on a modern form of injection, like CorpNewt USBmap, or USBToolBox (which is derived from USBmap), XhciPortLimit quirk is not needed.

There's a very long and complicated history about the USBinjectAll.kext which dovetails with this topic, but the lore is difficult to track because the name USBinjectAll got appropriated by some builders for their build-specific config.

In essence everything about USB port mapping comes down to editing a codeless kext (Info.plist) to reflect root hub ACPI names appropriate to a specific SMBIOS, for a subset of ports <= 15 and port connector types correctly specified. The tools help streamline the process, but if you're super savvy you could start with a boilerplate map and edit it by hand.

USBToolbox on Windows is the easiet way to go (assuming Windows) because no setup step is required to enable all ports. Under macOS you use a temporary kext (dummy) produced by the toolbox to enable all ports, make your map, then replace the dummy kext with the finished map. Toolbox handles the details.

Hackintool is an earlier tool that can't produce a dummy and how-tos say to use XhciPortLimit (hence Catalina req), but in principle a properly constructed version of USBInjectAll could work, but if you know enough to do that, you could just edit it to be your map.

There's probably some important detail I've overlooked in this history lesson so take it with caution, but my point is just to provide some clarification of lore in context.

Hth

Very well written and poorly worded on my part, apologies!
 
Back
Top