Contribute
Register

[Guide] Creating a Custom SSDT for USBInjectAll.kext

Hey there, I'm having a bit of an issue with my custom ssdt. Specifically, I'm not sure that I'm patching the config.plist correctly. I pasted the Ehc1 > EH01 thing over into the plist, but maybe I did it wrong. My Ioreg still shows USB 2.0 as EHC.

Thank you for this article and all of your help.
 

Attachments

  • config.plist
    14.2 KB · Views: 202
  • Screen Shot 2017-10-16 at 4.32.11 PM.png
    Screen Shot 2017-10-16 at 4.32.11 PM.png
    195.2 KB · Views: 70
  • Screen Shot 2017-10-16 at 4.34.35 PM.png
    Screen Shot 2017-10-16 at 4.34.35 PM.png
    201.7 KB · Views: 141
  • Screen Shot 2017-10-16 at 4.35.43 PM.png
    Screen Shot 2017-10-16 at 4.35.43 PM.png
    322.8 KB · Views: 79
Hey there, I'm having a bit of an issue with my custom ssdt. Specifically, I'm not sure that I'm patching the config.plist correctly. I pasted the Ehc1 > EH01 thing over into the plist, but maybe I did it wrong. My Ioreg still shows USB 2.0 as EHC.

Thank you for this article and all of your help.

Your config.plist is corrupt.
Never use a text editor... always a plist editor such as Xcode or PlistEdit Pro.
 
Your config.plist is corrupt.
Never use a text editor... always a plist editor such as Xcode or PlistEdit Pro.
Crap... should I generate a plist from clover, edit in Xcode and replace? Or have I royally screwed something up beyond that?
 
Crap... should I generate a plist from clover, edit in Xcode and replace? Or have I royally screwed something up beyond that?

Clover doesn't generate config.plist.. it only reads it.
Go back to a config.plist prior to your edits that corrupted it.
 
Just to clarify, a custom SSDT needs to be redone from Sierra to High Sierra? Or does it transfer?
 
What is the meaning for each of the arguments highlighted in red?
how does clover or the computer interpret that?

DefinitionBlock ("", "SSDT", 2, "hack", "UIAC", 0)
{
...
}

I assume the "UIAC" stands for USB Inject All Configuration?
But what are the other arguments for?
 
What is the meaning for each of the arguments highlighted in red?
how does clover or the computer interpret that?

DefinitionBlock ("", "SSDT", 2, "hack", "UIAC", 0)
{
...
}

I assume the "UIAC" stands for USB Inject All Configuration?
But what are the other arguments for?

Read the ACPI specification.
 
Read the ACPI specification.

Screen Shot 2017-10-17 at 15.20.48.png


Geen is what i understood, red says nothing to me.
DefenisitonBlock ("whatever name i want", "SSDT", 2, "hack", "UIAC", 0)
{
termlist
}

Nothing mentioned about what is ComplianceRevision,
OEMID is the name of the company that made the table?
TableID is the name of the table itself? So the kext USBInjectALL is defined in its code as UIAC?
OEMRevision is the version of the table?

Gosh I'm going deep now.

This is what i have from my current applied SSDT patch in the arguments (this just makes me even more confused)
Code:
DefinitionBlock ("", "SSDT", 1, "USB Co", "USBFix", 0x00003000)
{
...
}

According to "USBFix", This is not how the patch identifies the table...
 
View attachment 286370

Geen is what i understood, red says nothing to me.
DefenisitonBlock ("whatever name i want", "SSDT", 2, "hack", "UIAC", 0)
{
termlist
}

Nothing mentioned about what is ComplianceRevision,
OEMID is the name of the company that made the table?
TableID is the name of the table itself? So the kext USBInjectALL is defined in its code as UIAC?
OEMRevision is the version of the table?

Gosh I'm going deep now.

This is what i have from my current applied SSDT patch in the arguments (this just makes me even more confused)
Code:
DefinitionBlock ("", "SSDT", 1, "USB Co", "USBFix", 0x00003000)
{
...
}

According to
Code:
"USBFix"
, This is not how the patch identifies the table...

You need to read the entire ACPI specification in order to find the answer.
The document is quite complete, but you're only reading part of it.

The text / revisions are simply reflected in the resulting file header.
 
Back
Top