Contribute
Register

VoodooI2C Help and Support

Joined
Apr 21, 2016
Messages
1,364
Motherboard
ASUS X556UA-Clover
CPU
i5-6200U
Graphics
HD 520,1366x768
Mobile Phone
iOS
Hi! And happy new year!
My trackpad disappears when i don't use it a few minutes , sorry for my poor english.
Someone have an advice or solution?
You should patch your DSDT for GPIO interrupts.

Thanks for the information
When applying rename the "polling" message no more appears in kernel log
IOInterruptSpecifiers TPD0 is no more present in IOreg
Does this mean trackpad works now in interrupts mode ?
One last question : from my understand with patchmatic I can check the results of clover patches (like _CRS rename to XCRS in the DSDT) but how can I check the result of SSDT patch I put in /clover/ACPI/patched (do not know if it has worked) ?
It doesn't look like VoodooI2C is loaded under your trackpad. Looking at the logs - _CRS was not found. Original _CRS was indeed renamed, but the new one wasn't found...
It looks like the SSDT was also patched for some reason (See SSDT-15.aml in the patchmatic extraction). Might be something with TgtBridge? Or something in your Clover configuration?
BTW, you should disable VoodooPS2's trackpad&mouse plugins. See the README.
 
Joined
Nov 26, 2017
Messages
239
Motherboard
Dell Inspiron 5379 - 1.12 - Clover UEFI 5070
CPU
i5-8250U
Graphics
UHD 620, 1920x1080
Mac
iMac, MacBook Air
Mobile Phone
Android
BTW, you should disable VoodooPS2's trackpad&mouse plugins. See the README.
Thanks for reply,
what README is to see ?
Ioreg shows Voodoo2CHIDDevice under TPD0, what should be there instead ?
 

sumiika2019

Banned
Joined
Jan 15, 2019
Messages
18
Motherboard
Surface Pro 4
CPU
I5-6300U
Graphics
HD520 2736x1824
Mac
MacBook Pro
Mobile Phone
Android
Surface Pro 3 Core i5 4300 U 1.9 GHz 4 GB RAM 128 GB It is trying to install Voodoo I 2 C on SSD.
I am reading the installation procedure, but I have something to tell you.

I'm about to use it in polling mode and I'm trying to patch DSDT.
Changed part of _CRS method as follows.

Change before:

Method (_CRS, 0, NotSerialized) // _ CRS: Current Resource Settings
{
Name (SBFI, ResourceTemplate ()
{
I2cSerialBusV2 (0x0060, ControllerInitiated, 0x000F4240,
Addressing Mode 7 Bit, "\\ _ SB.PCI 0. I 2 C 1",
0x00, ResourceConsumer,, Exclusive,
)
Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,,,)
{
0x00000022,
}
})
Return (SBFI)
}

After change:

Method (_CRS, 0, NotSerialized) // _ CRS: Current Resource Settings
{
Name (SBFB, ResourceTemplate ()
{
I2cSerialBusV2 (0x0060, ControllerInitiated, 0x000F4240,
Addressing Mode 7 Bit, "\\ _ SB.PCI 0. I 2 C 1",
0x00, ResourceConsumer,, Exclusive,
)
})
Return (SBFB)
}

When starting up, the following error was output to system.log.
Could not get interrupt event source

Is it necessary to patch GPIO Pinning?
IOInterruptSpecifiers are not displayed like the attached image.
 

Attachments

Joined
May 13, 2013
Messages
11
Motherboard
ASUS ZenBook Flip 14 UX461UA-5.12-Clover
CPU
i7-8550U
Graphics
UHD 620, 1920x1080
Mac
MacBook Pro
Mobile Phone
Android
You should patch your DSDT for GPIO interrupts.


It doesn't look like VoodooI2C is loaded under your trackpad. Looking at the logs - _CRS was not found. Original _CRS was indeed renamed, but the new one wasn't found...
It looks like the SSDT was also patched for some reason (See SSDT-15.aml in the patchmatic extraction). Might be something with TgtBridge? Or something in your Clover configuration?
BTW, you should disable VoodooPS2's trackpad&mouse plugins. See the README.
Many thanks Ben.
Now My DSDT is patched with "GPIO Controller Enable (SKL+), but i have the same problem.
I think i need to modify my DSDT manually (GPIO Pinning).
For the moment unsuccessful, but I continue and try to understand this guide.
I may need to put the list of pins 0x55 in ETPD (touchpad) and the list of pins 0x5c in TPL0 (touch screen), but I'm not sure and I do not even see where I should write them.
I attach my patched DSDT and IOreg filed.
 

Attachments

Joined
Apr 21, 2016
Messages
1,364
Motherboard
ASUS X556UA-Clover
CPU
i5-6200U
Graphics
HD 520,1366x768
Mobile Phone
iOS
Thanks for reply,
what README is to see ?
Ioreg shows Voodoo2CHIDDevice under TPD0, what should be there instead ?
This code will disable the trackpad plugin of VoodooPS2. Not sure of mouse plugin can be disabled (you can also just remove them from VoodooPS2Controller.kext/Contents/PlugIns).

Look at your touchscreen in IOReg to see how it should look. It's connected via USB.

How can I

How can I find use gen_debug.sh :((
https://www.tonymacx86.com/threads/tool-generate-proper-problem-reporting-files.235953/
Press F2 and F4 in the Clover GUI before running the script.

Surface Pro 3 Core i5 4300 U 1.9 GHz 4 GB RAM 128 GB It is trying to install Voodoo I 2 C on SSD.
I am reading the installation procedure, but I have something to tell you.

I'm about to use it in polling mode and I'm trying to patch DSDT.
Changed part of _CRS method as follows.

Change before:

Method (_CRS, 0, NotSerialized) // _ CRS: Current Resource Settings
{
Name (SBFI, ResourceTemplate ()
{
I2cSerialBusV2 (0x0060, ControllerInitiated, 0x000F4240,
Addressing Mode 7 Bit, "\\ _ SB.PCI 0. I 2 C 1",
0x00, ResourceConsumer,, Exclusive,
)
Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,,,)
{
0x00000022,
}
})
Return (SBFI)
}

After change:

Method (_CRS, 0, NotSerialized) // _ CRS: Current Resource Settings
{
Name (SBFB, ResourceTemplate ()
{
I2cSerialBusV2 (0x0060, ControllerInitiated, 0x000F4240,
Addressing Mode 7 Bit, "\\ _ SB.PCI 0. I 2 C 1",
0x00, ResourceConsumer,, Exclusive,
)
})
Return (SBFB)
}

When starting up, the following error was output to system.log.
Could not get interrupt event source

Is it necessary to patch GPIO Pinning?
IOInterruptSpecifiers are not displayed like the attached image.
This patch is wrong. You want interrupts, not polling.
Your APIC pin is lower than 0x2F, you can use APIC interrupts. No need to use GPIO interrupts. Just revert that _CRS patch.

Many thanks Ben.
Now My DSDT is patched with "GPIO Controller Enable (SKL+), but i have the same problem.
I think i need to modify my DSDT manually (GPIO Pinning).
For the moment unsuccessful, but I continue and try to understand this guide.
I may need to put the list of pins 0x55 in ETPD (touchpad) and the list of pins 0x5c in TPL0 (touch screen), but I'm not sure and I do not even see where I should write them.
I attach my patched DSDT and IOreg filed.
Yes, of course you need GPIO pinning.
Your ETPD GPIO pin is indeed 0x55, TPL0 pin is 0x5C.
Follow the GPIO pinning guide, it is very clear.
Find _CRS of both devices, remove the Interrupt part from SBFI and rename it to SBFB. Then add SBFG, and put inside the correct GPIO pin.
Finally, change the return statement from Return (SBFI) to Return (ConcatenateResTemplate (SBFB, SBFG)).
 
Joined
Jan 9, 2019
Messages
3
This code will disable the trackpad plugin of VoodooPS2. Not sure of mouse plugin can be disabled (you can also just remove them from VoodooPS2Controller.kext/Contents/PlugIns).

Look at your touchscreen in IOReg to see how it should look. It's connected via USB.


https://www.tonymacx86.com/threads/tool-generate-proper-problem-reporting-files.235953/
Press F2 and F4 in the Clover GUI before running the script.


This patch is wrong. You want interrupts, not polling.
Your APIC pin is lower than 0x2F, you can use APIC interrupts. No need to use GPIO interrupts. Just revert that _CRS patch.


Yes, of course you need GPIO pinning.
Your ETPD GPIO pin is indeed 0x55, TPL0 pin is 0x5C.
Follow the GPIO pinning guide, it is very clear.
Find _CRS of both devices, remove the Interrupt part from SBFI and rename it to SBFB. Then add SBFG, and put inside the correct GPIO pin.
Finally, change the return statement from Return (SBFI) to Return (ConcatenateResTemplate (SBFB, SBFG)).
I have checked the touch panel device (TCH1) with IOReg, but there is no item of IOInterruptSpecifiers.
Is there any other way to check the APIC pin number?

If the IOInterruptSpecifiers are not displayed, is it unnecessary to patch the DSDT?
Does it work simply by installing VoodooI2C.kext and VoodooI2CHID.kext?
 

Attachments

Last edited:
Joined
Mar 29, 2011
Messages
62
Motherboard
Lenovo Thinkpad T480
CPU
i7-8550u
Graphics
UHD620
hey guys, any idea how I'd get my elan1200 trackpad running on my Lenovo Thinkpad T480s? I get a KP when I put VoodooI2c.kext + VoodooI2CHID.kext in EFI/CLOVER/Kexts/OTHER even after applying OS Check (Win10) + GPIO enable DSDT patches. profile is filled out and PR files are attached, thanks.
 

Attachments

Top