SSDT-9.aml, apparently the one and only key for a complete and successful TB Hackintosh implementation...
In order to demonstrate that I am not yet totally insane with my guesses and ideas, let's demonstrate below that SSDT-9.aml seems to be one of possible cornerstone for reaching full Hackintosh functionality on a iMac Pro Hackintosh system.
However, due to the missing method "_ini" implementation (port and device initialisation/configuration) in SSDT-9.aml and likely also due to other missing Apple iMac Pro SSDT/DSDT ACPI implementations, my modified SSDT-9.aml yet fails in implementing the basic system essentials for a complete TB Hackintosh configuration and results in plenty of ACPI errors, Name Space Lookup failures and variable or argument errors during boot..
Nevertheless, few essential things are added when inspecting IOREG or Apple's system report..
While from the TB-kexts used on a real iMacPro only com.apple.driver.AppleThunderboltNHI.kext is active on our Hackintosh systems, SSDT-9.aml so far also loads at least com.apple.iokit.IOThunderboltFamily.kext.
However, com.apple.driver.AppleThunderboltDPAdapterFamily, com.apple.driver.AppleThunderboltIP.kext, com.apple.driver.AppleThunderboltDPInAdapter, com.apple.driver.AppleThunderboltPCIDownAdapter remain without function due to frequent ACPI errors (Namespace Lookup errors, argument and variable errors, etc.) during boot, which are supposedly due to the yet missing Method "_ini" (port/device implementation/configuration) in my most actual SSDT-9.aml distribution and lacking related ACPI implementations...
Most essentially, with my current SSDT-9.aml, also the "RTPC true" entry adds under AppleThuderboltNHIType3..
One might also find the one or other interesting IOREG add-ons under in all other TB PCI device implementations...
Attached below my current AML Tb-Implementations for use by experts only!!! I also add once more
@TheOfficialGypsy 's most recent iMac Pro dump, where you find the original SSDT-9.aml (BTW.. SSDT-10.aml might be noteworthy in addition), besides the iMac Pro DSDT and other iMacPro SSDT implementations... attached as well the IOREG save of the original iMac Pro...
@TheOfficialGypsy 's, any more recent dump under 10.13.6 or 10.14 PB4 available?
I guess, it rapidly might become evident that the complexity of the problem apparently exceeds the capacities and knowledge of one single person... What about active collaborators, here online or maybe also within some small local "insitu" and "hands-on" workgroup in the Berlin/Germany area?
@apfelnico,
@nmano or who ever wants and is able to join this endeavour?
I really don't know if there is any valid chance for a successful SSDT-9.aml Hackintosh TB implementation, but I think we should give it a try..
Enjoy and have fun,
P.S: SSDT-9.aml of the iMac Pro dump is broken and impossible to be compiled..
One needs to start with the SSDT-9.dsl and add "\_SB.PC01.BR1A.UPSB.AMPE ()" under:
Code:
Scope (\_GPE)
{
Method (_L32, 0, NotSerialized) // _Lxx: Level-Triggered GPE
{
If (LNot (OSDW ()))
{
If (LEqual (\_SB.PC01.BR1A.POC0, One))
{
Return (Zero)
}
Sleep (0x0190)
If (LEqual (\_SB.PC01.BR1A.WTLT (), One))
{
\_SB.PC01.BR1A.ICMS ()
}
Else
{
}
If (\_SB.PC01.BR1A.UPMB)
{
Store (Zero, \_SB.PC01.BR1A.UPMB)
Sleep (One)
}
Else
{
}
\_SB.PC01.BR1A.CMPE ()
}
ElseIf (LEqual (\_SB.GGII (0x01030012), One))
{
\_SB.SGII (0x01030012, Zero)
}
Else
{
\_SB.SGII (0x01030012, One)
}
\_SB.PC01.BR1A.UPSB.AMPE ()
}
}
It took me weeks and months to discover and fix these stupid errors..
For the sake of completeness and for simplicity, I also attach a minimal SSDT-9 hot plug injector AML, which pretty does everything for achieving a functional TB and TB HXC USB hot plug workaround on THB-C removed Hackintosh systems..