Contribute
Register

macOS Catalina 10.15.0 - USB Port-Limit Removal Patch

Joined
Oct 12, 2014
Messages
6
Motherboard
Gigabyte GA-H270-HD3
CPU
Intel I7 7700
Graphics
HD 630 1536MB
Mac
iMac
Mobile Phone
Android, iOS
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 )
Thank you very much indeed.!
 
Joined
Sep 22, 2011
Messages
596
Motherboard
HP EliteDesk 800 G4 Mini
CPU
I7-8700T
Graphics
UHD 630
Mac
Mac mini
Mobile Phone
iOS
@UtterDisbelief - Thank you for this thread! Your patch in Post #1 fixed USB 3.1 on my HP EliteDesk 800 G4 Mini

  • I7-8700T
  • UHD 630
  • 3 x DP
  • 6 x USB 3.1
  • 1 x USB C 3.1
  • Q370
  • 32 GB DDR4
  • 2 x NVMe SSD
  • 1 x SATA6 SSD
  • SMBIOS MacMini 8,1
  • CLOVER (UEFI) r5115
  • MacOS 10.15.4.02
 
Joined
Sep 22, 2011
Messages
596
Motherboard
HP EliteDesk 800 G4 Mini
CPU
I7-8700T
Graphics
UHD 630
Mac
Mac mini
Mobile Phone
iOS
@UtterDisbelief Thanks to your port limit patch in Post #1, I was able to install Catalina 10.15.4.02 on my HP EliteDesk 800 G4 Mini. I then created a SSDT-UIAC for my system (using Hackintool) and found that I no longer need the port limit patch. Is that what you would expect? In your opinion, is it better to run with properly configured SSDT-UIAC -OR- the port limit patch? Thank you!
 

Feartech

Moderator
Joined
Aug 3, 2013
Messages
17,351
Motherboard
Asus N752VX-OpenCore
CPU
i7-6700HQ / HM170
Graphics
HD 530 1920 x 1080
Mac
iMac
Mobile Phone
iOS
@UtterDisbelief Thanks to your port limit patch in Post #1, I was able to install Catalina 10.15.4.02 on my HP EliteDesk 800 G4 Mini. I then created a SSDT-UIAC for my system (using Hackintool) and found that I no longer need the port limit patch. Is that what you would expect? In your opinion, is it better to run with properly configured SSDT-UIAC -OR- the port limit patch? Thank you!
port limit patch is to only be used to setup your usb ports, then you use either USBInjectAll.kext and SSDT or you use only USBPorts.kext

in both cases, you remove the port limit patch after you have used either of the options above
 
Joined
Sep 22, 2011
Messages
596
Motherboard
HP EliteDesk 800 G4 Mini
CPU
I7-8700T
Graphics
UHD 630
Mac
Mac mini
Mobile Phone
iOS
port limit patch is to only be used to setup your usb ports, then you use either USBInjectAll.kext and SSDT or you use only USBPorts.kext

in both cases, you remove the port limit patch after you have used either of the options above
Thanks for the quick reply! And my apologies for a question that you've probably answered a million times. Thanks again!
 
Joined
Sep 22, 2011
Messages
596
Motherboard
HP EliteDesk 800 G4 Mini
CPU
I7-8700T
Graphics
UHD 630
Mac
Mac mini
Mobile Phone
iOS
USB appears to be working perfectly on my HP EliteDesk 800 G4 Mini; however, when I run the USBMap tool, it indicates that MacMini8,1 is not found in IOUSBHostFamily.kext and that I do not have a valid USBX device (see attached screenshot). Should I add the SSDT-USBX.aml to my EFI as suggested by the USBMap tool? Thank you.

EDIT: I suspect that I do need to add device USBX. I looked at a dump from a real MacMini8,1 and see that the DSDT.aml includes Device (USBX)

Code:
        Device (USBX)
        {
            Name (_ADR, Zero)  // _ADR: Address
            Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
            {
                Local0 = Package (0x08)
                    {
                        "kUSBSleepPowerSupply", 
                        0x0C80, 
                        "kUSBSleepPortCurrentLimit", 
                        0x0834, 
                        "kUSBWakePowerSupply", 
                        0x0C80, 
                        "kUSBWakePortCurrentLimit", 
                        0x0834
                    }
                DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                Return (Local0)
            }
        }
 

Attachments

Last edited:
Top