Contribute
Register

[Guide] Creating a Custom SSDT for USBInjectAll.kext

It means you didn't have the port limit patch active, or USBInjectAll.kext was not installed properly.

I installed both via MultiBeast v9.1, and also tried manually. Got the same result every time, and tried moving USBInjectAll.kext to EFI as well.

What do you mean "being displayed as 'SS'... but "no device shown in IORegistry".
Seems like a direct contradiction.

In your images there is a drop down arrow next to the usb port in IORegistry showing what device is plugged in. In mine, even if there is something plugged in it displays nothing (device as in a connected peripheral to the hackintosh). You can see in my image of the IORegistry it looks like there is nothing plugged into the hack, however there was about 4-5 devices (from bluetooth/wifi adapters to usb sticks/hdd drives) when I took the screen grab.

Read post #1, "Problem Reporting".
I'll update with this when I get back infront of my hack

Your USB type C is likely connected to the Thunderbolt controller. Not covered in this guide.
Keep in mind most TB controllers don't work unless you have something plugged in prior to boot.
Good to know. Will have to try having it connected on boot.

Thanks a lot RehabMan
 
I installed both via MultiBeast v9.1, and also tried manually. Got the same result every time, and tried moving USBInjectAll.kext to EFI as well.

No diagnosis possible without "Problem Reporting" files as per post #1.

In your images there is a drop down arrow next to the usb port in IORegistry showing what device is plugged in. In mine, even if there is something plugged in it displays nothing (device as in a connected peripheral to the hackintosh).

No idea without an ioreg and an image of what you're seeing.

You can see in my image of the IORegistry it looks like there is nothing plugged into the hack, however there was about 4-5 devices (from bluetooth/wifi adapters to usb sticks/hdd drives) when I took the screen grab.

Your mistake. You're doing a search. Don't do that, and you'll see the subnodes.
 
I recently noticed that my USB3 ports no longer functioned at full speed. They did back in Yosemite days, so I surmise it was El Cap or Sierra that broke them, and I never noticed. Well, I now need full speed, so I followed the guide in Post #1, and was successful getting all ports correctly injected and working.

Today, however, that stopped working. Per IORegistryExplorer, it is clear my XHC ports are no longer being injected properly. The SSDT-UIAC.dsl I created (attached) injects HS 1-4, 7-10 and 12 in addition to SSP 1-6. However, ioreg is now showing HS01-14 and SSP1 *only* (ioreg attached). So, the ports are no longer being injected correctly....

Today, I did two things that I suppose could have broken this. First, I upgraded to 10.12.5 and second, I used ssdtPRGen.sh to create ssdt.aml to manage CPU power (it seems at some point, my CPU stopped ever coming down off of 4Ghz).

After reading through Post #1 again, I thought maybe this has something to do with SortedOrder, so I found one of your example config.plist that uses that, and added a #SortedOrder key with appropriate strings with SSDT.AML as Item 1, and SSDT-UIAC.AML as Item 2 (I also tried reversing the order).

However, ports are still not injected properly after reboot.... So, I removed ssdt.aml from EFI/ACPI/patched, backed out the SortedOrder change in config.plist and *still* USB injection is failing. So, I guess this must be due to the upgrade to 10.12.5?!? argh...

Any help greatly appreciated.... Thanks.

Attached are ioreg, config.plist and ssdt-uiac.dsl.
 

Attachments

  • Archive.zip
    851.6 KB · Views: 89
I recently noticed that my USB3 ports no longer functioned at full speed. They did back in Yosemite days, so I surmise it was El Cap or Sierra that broke them, and I never noticed. Well, I now need full speed, so I followed the guide in Post #1, and was successful getting all ports correctly injected and working.

Today, however, that stopped working. Per IORegistryExplorer, it is clear my XHC ports are no longer being injected properly. The SSDT-UIAC.dsl I created (attached) injects HS 1-4, 7-10 and 12 in addition to SSP 1-6. However, ioreg is now showing HS01-14 and SSP1 *only* (ioreg attached). So, the ports are no longer being injected correctly....

Today, I did two things that I suppose could have broken this. First, I upgraded to 10.12.5 and second, I used ssdtPRGen.sh to create ssdt.aml to manage CPU power (it seems at some point, my CPU stopped ever coming down off of 4Ghz).

After reading through Post #1 again, I thought maybe this has something to do with SortedOrder, so I found one of your example config.plist that uses that, and added a #SortedOrder key with appropriate strings with SSDT.AML as Item 1, and SSDT-UIAC.AML as Item 2 (I also tried reversing the order).

However, ports are still not injected properly after reboot.... So, I removed ssdt.aml from EFI/ACPI/patched, backed out the SortedOrder change in config.plist and *still* USB injection is failing. So, I guess this must be due to the upgrade to 10.12.5?!? argh...

Any help greatly appreciated.... Thanks.

Attached are ioreg, config.plist and ssdt-uiac.dsl.

Read post #1, "Problem Reporting".

Note: Your ioreg shows USBInjectAll.kext is not installed, or is not installed properly...
Your config.plist has incorrect (non-existent) settings for disabling SIP.
 
Read post #1, "Problem Reporting".

Note: Your ioreg shows USBInjectAll.kext is not installed, or is not installed properly...
Your config.plist has incorrect (non-existent) settings for disabling SIP.


Er.... yeah.... I guess it would help if I start with the fundamentals. I just never guessed it could be this simple since everything was working before. At any rate, I corrected these issues and all works. Thanks!

I have zero idea how the kext got clobbered... it was in /Library/Extensions and was gone when I looked. I put it in EFI/CLOVER/kexts this time...

Similarly, no idea how SIP got re-enabled. Yet, as you noted, RtVariables is empty. I backup config.plist after every change, and sure enough, the SIP entries were in the backup.

Ever see anything like this? It's just really odd that everything was working and then things just seem to go missing.
 
Er.... yeah.... I guess it would help if I start with the fundamentals. I just never guessed it could be this simple since everything was working before. At any rate, I corrected these issues and all works. Thanks!

I have zero idea how the kext got clobbered... it was in /Library/Extensions and was gone when I looked. I put it in EFI/CLOVER/kexts this time...

Similarly, no idea how SIP got re-enabled. Yet, as you noted, RtVariables is empty. I backup config.plist after every change, and sure enough, the SIP entries were in the backup.

Ever see anything like this? It's just really odd that everything was working and then things just seem to go missing.

All kexts should be installed to the system volume (kext injection is only for the installer and recovery partitions).
No idea how RtVariables got erased (using Clover Configurator?)
 
All kexts should be installed to the system volume (kext injection is only for the installer and recovery partitions).
No idea how RtVariables got erased (using Clover Configurator?)


Okay, well, the readme for USBInjectAll.kext on your github specifically states: "It should work from EFI/Clover/kexts."

Is this no longer the case? I'm injecting the kext with Clover, and everything seems to more or less work...

And no, I use Xcode...
 
Okay, well, the readme for USBInjectAll.kext on your github specifically states: "It should work from EFI/Clover/kexts."

It works if injected.
But kexts from EFI/Clover/kexts are not injected in certain scenarios.
And ... injection is only for the installer and recovery partition.

And no, I use Xcode...

Then it got erased because you deleted it...
 
Stuck in the Port discovery step, i think i did everything prior correctly but my IOReg doesn't seem to be tracking changes to IOKit objects and changing the colors, nothing happens when i plug and unplug USB2/3 & Hubs.

AI-vxP1QQm6OvVAVhDhiqw.png
 

Attachments

  • BOOT.zip
    314.6 KB · Views: 71
  • iHack’s iMac.ioreg
    16.1 MB · Views: 108
Stuck in the Port discovery step, i think i did everything prior correctly but my IOReg doesn't seem to be tracking changes to IOKit objects and changing the colors, nothing happens when i plug and unplug USB2/3 & Hubs.

AI-vxP1QQm6OvVAVhDhiqw.png

Don't use the search field (does it say anywhere in the guide to search 'XHC'?).

Navigate directly to XHC without search.
 
Back
Top