Contribute
Register

USB: How does it work without USB Port Limit Patch?

Status
Not open for further replies.
Joined
May 21, 2011
Messages
405
Motherboard
Lenovo m90q Tiny
CPU
i7-10700
Graphics
UHD 630
Mac
  1. MacBook Pro
Hi,

I am used to generate optimal SSDT for USB Ports, however at first we are supposed to apply USBInjectAll & a USB Port Limit Patch.

Since these no longer works/exists for Big Sur, how are we supposed to proceed?

Also, how would you get the Installer to run on a PC that no longer have USB 2.0 port (this isn't my case, but I wonder)? How would you workaround the error "Still waiting for root device" in that specific case.

Thank you
James
 
@jamesst20 It's news to me that this USB port patching method that you described doesn't work with Big Sur. I just did this on a new rig that I'm configuring and the following steps worked fine when booting with OpenCore 0.6.5:
  1. Test the following with a USB stick so that you can revert to the baseline EFI on your SSD if you make a mistake that renders your EFI non bootable
  2. Copy USBInjectAll.kext to EFI/OC/Kexts
  3. In OC config.plist, make sure that Kernel>Add includes an entry for USBInjectAll.kext and that both the PlistPath and ExecutablePath are properly defined and that USBInjectAll.kext is enabled
  4. In OC config.plist, set Kernel>Quirks>XhciPortLimit to True
  5. Make sure that no other USB kexts are enabled in your OC config.plist (just USBInjectAll.kext)
  6. Reboot
  7. Use Hackintool to create a new USBPorts.kext
  8. Make sure that USBPorts.kext/Contents/Info.plist has the correct USB power properties for your rig
  9. Copy your new USBPorts.kext to EFI/OC/Kexts
  10. in OC config.plist, set Kernel>Quirks>XhciPortLimit to False
  11. in OC config.plist, disable USBInjectAll.kext
  12. in OC config.plist, make sure that Kernel>Add includes an entry for USBPorts.kext and that PlistPath is properly defined (there is no entry in USBPorts.kext>ExecutablePath) and that USBPorts.kext is enabled
  13. Reboot
  14. Test your USB ports
 
@jamesst20 It's news to me that this USB port patching method that you described doesn't work with Big Sur. I just did this on a new rig that I'm configuring and the following steps worked fine when booting with OpenCore 0.6.5:
  1. Test the following with a USB stick so that you can revert to the baseline EFI on your SSD if you make a mistake that renders your EFI non bootable
  2. Copy USBInjectAll.kext to EFI/OC/Kexts
  3. In OC config.plist, make sure that Kernel>Add includes an entry for USBInjectAll.kext and that both the PlistPath and ExecutablePath are properly defined and that USBInjectAll.kext is enabled
  4. In OC config.plist, set Kernel>Quirks>XhciPortLimit to True
  5. Make sure that no other USB kexts are enabled in your OC config.plist (just USBInjectAll.kext)
  6. Reboot
  7. Use Hackintool to create a new USBPorts.kext
  8. Make sure that USBPorts.kext/Contents/Info.plist has the correct USB power properties for your rig
  9. Copy your new USBPorts.kext to EFI/OC/Kexts
  10. in OC config.plist, set Kernel>Quirks>XhciPortLimit to False
  11. in OC config.plist, disable USBInjectAll.kext
  12. in OC config.plist, make sure that Kernel>Add includes an entry for USBPorts.kext and that PlistPath is properly defined (there is no entry in USBPorts.kext>ExecutablePath) and that USBPorts.kext is enabled
  13. Reboot
  14. Test your USB ports

Thanks ! By the time I figured out, but I don't remember exactly how I did it. I will quote myself from another thread. XhciPortLimit isn't doing anything on the build I was mentioning.

Hi,

Thanks I figured out the quirk was made for that later, however it wasn't working on my system.

I ended up using these flags in combination of Hackintool + USBInjectAll

Code:
# uia_include=HS04: to keep HS04 working for mouse/keyboard when using -uia_exclude_hs
# -uia_exclude_hs: excludes all HSxx ports
# -uia_exclude_ss: excludes all SSxx ports

to get all my ports discovered, highlight those I wanted to keep and generate and SSDT.

We shouldn't botter having USB Port Limit patch with these

Also, if I am remembering right, there was a USBInjectAll version that wasn't working for my PC and I think it was the one from ReHabMan so I had to use this fork which is newer https://github.com/Sniki/OS-X-USB-Inject-All
 
Status
Not open for further replies.
Back
Top