First of all, you should uninstall the kext and manually load it until you get it working. Read here, post #2:
https://www.tonymacx86.com/threads/wip-voodooi2c-i2c-trackpad-limited-support.204227/#post-1344206
After you uninstall it, you'll be able to boot your computer.
DSDT patching:
You have an error compiling your DSDT, you cannot proceed until you resolve it.
I found you can remove this line from your DSDT, and it would work:
Code:
External (BNUM, UnknownObj) // (from opcode)
I am not sure about that, maybe
@RehabMan could confirm it's OK.
Then, edit your I2C1 scope (~line 15273 in your patched DSDT.dsl) from this:
Code:
Scope (_SB.PCI0)
{
Device (I2C1)
{
Name (LINK, "\\_SB.PCI0.I2C1")
Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
{
Return (GETD (SB11))
}
Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
{
LPD0 (SB11)
}
Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
{
LPD3 (SB11)
}
If (LNotEqual (SMD1, 0x02))
{
Name (_HID, "INT3443") // _HID: Hardware ID
Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
{
Return (LHRV (SB11))
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (LCRS (SMD1, SB01, SIR1))
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (LSTA (SMD1))
}
}
If (LEqual (SMD1, 0x02))
{
Name (_ADR, 0x00150001) // _ADR: Address
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
If (PCIC (Arg0))
{
Return (PCID (Arg0, Arg1, Arg2, Arg3))
}
Return (Buffer (One)
{
0x00
})
}
}
}
}
To this:
Code:
Scope (_SB.PCI0)
{
Device (I2C1)
{
Name (LINK, "\\_SB.PCI0.I2C1")
Name (_HID, "INT3443") // _HID: Hardware ID
Method (_HRV, 0, NotSerialized) // _HRV: Hardware Revision
{
Return (LHRV (SB11))
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (LCRS (SMD1, SB01, SIR1))
}
Method (_PSC, 0, NotSerialized) // _PSC: Power State Current
{
GETD (SB11)
}
Method (_PS0, 0, NotSerialized) // _PS0: Power State 0
{
LPD0 (SB11)
}
Method (_PS3, 0, NotSerialized) // _PS3: Power State 3
{
LPD3 (SB11)
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (LSTA (SMD1))
}
Name (_ADR, 0x00150001) // _ADR: Address
Method (_DSM, 4, Serialized) // _DSM: Device-Specific Method
{
If (PCIC (Arg0))
{
Return (PCID (Arg0, Arg1, Arg2, Arg3))
}
Return (Zero)
}
}
}
Then, add an OS patch to your DSDT, I would say Windows 10 is a good fit.
Change this:
Code:
If (_OSI ("Windows 2015"))
{
Store (0x07DF, OSYS)
}
To this:
Code:
If(LOr(_OSI("Darwin"),_OSI("Windows 2015")))
{
Store (0x07DF, OSYS)
}
Look how to manually load the kext as described in the link I gave you, and try that.
If it's still not working, attach the DSDT (make sure you first move it to CLOVER/acpi/patched, and boot with it) and a copy of IOReg.