Contribute
Register

macOS Catalina 10.15.0 - USB Port-Limit Removal Patch

Not working for me. Recent installation of Catalina 10.15.1 on Skylake Gigabyte H170N-WIFI board, all working except with port limit removal patches in per post #1 of this thread, USB Inject All version 0.7.3 in both /Library/extensions and EFI/CLOVER/kexts/Other, and no USB SSDT in ACPI patched, the following is what I get in IORegistry Explorer. No SS ports at all. My previous USB SSDT, which worked fine in High Sierra, gives the same result as below when the port limit removal patches are removed and USBInjectAll.kext is trashed. Any help here? Thanks!
Skylake 10.15.1 Port Limit Removal Result.jpg
 
Not working for me. Recent installation of Catalina 10.15.1 on Skylake Gigabyte H170N-WIFI board, all working except with port limit removal patches in per post #1 of this thread, USB Inject All version 0.7.3 in both /Library/extensions and EFI/CLOVER/kexts/Other, and no USB SSDT in ACPI patched, the following is what I get in IORegistry Explorer. No SS ports at all. My previous USB SSDT, which worked fine in High Sierra, gives the same result as below when the port limit removal patches are removed and USBInjectAll.kext is trashed. Any help here? Thanks!
View attachment 437709

Generally, this shows one of two things - either USBInjectAll is missing or that the Port-Limit Removal patches are incorrect in some way.

Can you post your config.plist ?
 
Thanks for your reply. I used a couple different versions of USBInjectAll.kext: 0.7.1 and 0.7.3. No difference. For each version I had installed the kext in /L/E using KextBeast v.2.0.2. And I had also installed each in EFI/CLOVER/kexts/Other by dragging it in. Multiple restarts always acted the same as far as IORegistryExplorer was concerned. I tried chucking the two port limit removal patches and USBInjectAll.kext, and just putting back in my "SSDT-USB-SKYLAKE.aml," which had worked fine on both High Sierra and Mojave. The IORegistryExplorer showed exactly the same entries as I posted above. I cannot make that list vary. I don't have that computer available at the moment, so I can't post the config.plist. Oh yeah, I tried "auto merge" both checked and unchecked. No difference. Below are the SSDTs that should work when the port-limit patches and USBInjectAll.kext are removed, and my port-mapping doc used to generate the attached SSDT. When I have access to that computer once again, I will attach my config.plist. It will probably be a week or so...
 

Attachments

  • Skylake SSDTs.zip
    4.8 KB · Views: 86
  • Skylake USB Ports.docx.zip
    69.7 KB · Views: 102
Thanks for your reply. I used a couple different versions of USBInjectAll.kext: 0.7.1 and 0.7.3. No difference. For each version I had installed the kext in /L/E using KextBeast v.2.0.2. And I had also installed each in EFI/CLOVER/kexts/Other by dragging it in. Multiple restarts always acted the same as far as IORegistryExplorer was concerned. I tried chucking the two port limit removal patches and USBInjectAll.kext, and just putting back in my "SSDT-USB-SKYLAKE.aml," which had worked fine on both High Sierra and Mojave. The IORegistryExplorer showed exactly the same entries as I posted above. I cannot make that list vary. I don't have that computer available at the moment, so I can't post the config.plist. Oh yeah, I tried "auto merge" both checked and unchecked. No difference. Below are the SSDTs that should work when the port-limit patches and USBInjectAll.kext are removed, and my port-mapping doc used to generate the attached SSDT. When I have access to that computer once again, I will attach my config.plist. It will probably be a week or so...

Okay ...

I see a couple of mistakes in the SSDT template *.dsl and compiled *.aml =

HS09 = 02, 00, 00, 00
HS10 = 01, 00. 00, 00

Given the way the other ports are set-up I would expect HS09 to be = 09, 00, 00, 00 - and - HS10 to be = 0A, 00, 00, 00

As you are unable to post the config.plist I can't check the PLR-Patch.

Remember an SSDT-USB*.aml will not work without USBInjectAll.kext. You can indeed write an SSDT that simply patches ACPI without it, but that is a more complex undertaking.

:)
 
Thanks for your time in reviewing my attachments, UtterDisbelief. When I did the port mapping, the front bottom and top USB connectors on the front panel of the Rosewill RS-MI-01 Mini ITX case showed port numbers of 02 and 01 respectively, and the HS09 and HS10 flags were up on IORegistry Explorer for them. I have never seen that on any other port mapping I have done, but that's what the mapping came up with. Those two ports are coded as USB 2.0, and they both work as expected. I would have expected the alignment of HS vs. port number to be as you wrote above, but if you look at my attachment, I "called it as I saw it." I will recheck those later next week, but I doubt they will look different now from back in 2016.

My port-limit-removal patches were as described in the tonymacx86.com thread. I was careful not to mistype a "B" as an "8" since I have done that before.

I understand about USBInjectAll.kext being required for my SSDT. My main issue is that the port limit patches did not remove the port limit. Number of ports is stuck at 15, and is always the same as in post #42 no matter what changes I make... right and wrong.

The mystery still stands.
 
Hello, is this patch also for laptop, sir? or just only for desktop?
 
Hello, is this patch also for laptop, sir? or just only for desktop?

Hi there. (no need to be so formal, we're all in this together :thumbup: )

Yes, the patch is for macOS rather than a specific machine, although having said that, I have never come across a laptop with so many USB ports, so I seriously doubt you will need it.

Configuring your existing USB ports is still a good idea.

:)
 
With the release of macOS Catalina 10.15.0 you'll probably need a port-limit removal patch to begin your USB configuration on a new build.

Here it is:

View attachment 430312

As you can see we only need two patches for Catalina as opposed to four, for Mojave.

Line 1 -

Name*: com.apple.iokit.IOUSBHostFamily
Find*: 83FB0F0F
Replace*: 83FB3F0F

Line 2 -

Name* com.apple.driver.usb.AppleUSBXHCI
Find*: 83F90F0F
Replace*: 83F93F0F

Remember you will need USBInjectAll.kext installed to enable this to work.

:)

(Due credit given to previous patch discoverers: pmheart, daliansky and @ydeng )



I got it worked perfectly USB 3.0 and 3.1

So thank you very brother....
 
Back
Top