Voodooi2c: Laggy trackpad after polling optimisation commit

Created on 2 Apr 2020  路  81Comments  路  Source: VoodooI2C/VoodooI2C

Trackpad is laggy after https://github.com/alexandred/VoodooI2C/commit/6087df30dec3fa1dd1e5cf0763c3d8c73822e8b9

@kprinssu @lvs1974
Lag

log (3).txt

For comparison, this is with previous kexts
Lag2

I'm not sure these gifs are showing the difference (they are somehow slower that the original video), so here are the two videos
Archive.zip

All 81 comments

@lvs1974 can you please take a look at this?

@kprinssu: yes, sure!

@marianopela, thank you for the videos and log.
It looks quite strange. And there are a few messages in the log.
Could you try attached version, please?
It is compiled for 10.15, if it is not ok, please let me know.
Release.zip

@lvs1974 you're more than welcome and thanks for your work

It seems much better now and may have a normal behaviour. I can't really tell if it's normal or not, so I assume it's good enough for me

Here is the comparison (where new are these kexts you just provided and old are the ones I had since 2/3 days ago)
new.zip
old.zip

What did you change now?

Drag and drop is buggy. Doesn't work all the time.
Also if left click is pressed , cursor freezes for 2-3secs and then behaving erratically.

Timestamp (process)[PID]
2020-04-03 10:40:35.147682+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::Loading GPIO Data for SunrisePoint-LP
2020-04-03 10:40:35.147758+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Init!
2020-04-03 10:40:35.147761+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 0
2020-04-03 10:40:35.147787+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 1
2020-04-03 10:40:35.147807+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 2
2020-04-03 10:40:35.147916+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::GPIO Controller is already awake! Not reinitializing.
2020-04-03 10:40:35.149438+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CSensorHubEnabler::INT33D0 Found Intel ACPI Sensor Hub Enabler
2020-04-03 10:40:35.149666+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CSensorHubEnabler::INT33D0 Enabled Sensor Hub
2020-04-03 10:40:35.184611+0300 localhost kernel[0]: (VoodooI2C) VoodooI2CPCIController::pci8086,9d60 Starting I2C controller
2020-04-03 10:40:35.184638+0300 localhost kernel[0]: (VoodooI2C) VoodooI2CPCIController::pci8086,9d60 Set PCI power state D0
2020-04-03 10:40:35.184729+0300 localhost kernel[0]: (VoodooI2C) VoodooI2CPCIController::pci8086,9d60 Publishing nub
2020-04-03 10:41:05.538541+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::setProperties USBMouseStopsTrackpad = 0

@Mateo1234454545, it is not clear from your log which mode is used: interrupt or polling.
It looks like "log show" skips some log statements.
The most reliable way to get logs:

  • add msgbuf=1048576 into boot-args
  • in terminal use sudo dmesg | grep -i voodoo > ~/Desktop/log.txt

BTW: did you rebuilt VoodooInput from the latest acidanthera sources, some drag-n-drop issues were fixed there.

@marianopela, thank you!
What I actually did:

  1. moved updating of last_multi_touch_event from VoodooI2CMultitouchHIDEventDriver::handleDigitizerReport to VoodooI2CMultitouchHIDEventDriver::handleInterruptReport, otherwise it can be skipped,
  2. VoodooI2CHIDDevice::simulateInterrupt calls IOSleep(1) and checks whether last_multi_touch_event was changed and if it's the case, sets short timer interval immediately.

BTW: did you rebuilt VoodooInput from the latest acidanthera sources, some drag-n-drop issues were fixed there.

@Mateo1234454545 I'm on latest VoodooInput (from the last commit 10 days ago) and no problem at all with drag-n-drop nor with left click
Try this
VoodooInput.kext.zip

@lvs1974 Well done. Let's wait for @Mateo1234454545 to have confirmation

Edit: I asked a friend on 6th gen cpu and elan trackpad to test. It works well for him too
I'll wait a bit for @Mateo1234454545 and close the issue

@marianopela, thank you for testing and for asking your friend!

@lvs1974 @marianopela , tried but still the same.

Here is the new log :
log.txt

I'm using Interrupt
Screen Shot 2020-04-03 at 14.23.46.pdf

@Mateo1234454545, this issue does not have any common with interrupt mode.

@Mateo1234454545, this issue does not have any common with interrupt mode.

Yes ,but somehow it affects it. I didn't have this problem with previous commits.
For example , this is working just fine :
VoodooI2C.Mar.27.zip

@Mateo1234454545, very likely it is related to another commit:
https://github.com/alexandred/VoodooI2C/commit/2fdbedb4beeb1583fb911867b648a91d1abd38ee
Please try to update VoodooI2CHID to commit before 2fdbedb4beeb1583fb911867b648a91d1abd38ee, rebuild and check.

Thank you, but I don't have the required skills to build voodooi2c. I'm always getting errors.

@Mateo1234454545, then replace one kext and test again.
VoodooI2CHID.kext.zip

@Mateo1234454545, then replace one kext and test again.
VoodooI2CHID.kext.zip

No , still the same problem.

This VoodooI2CHID built for revision dd16dd9d10a23580e1aa2572a1b25568ba7a354f, when I actually did not changed anything. It means the issue is not in VoodooI2CHID.
I built VoodooI2C for revision 2c89682d7e207386a84e98d5173c505855e25479, try it.
VoodooI2C.kext.zip

No , doesn't solve the problem.

I'm guessing it has something to do with voodooGPIO.

With the version working OK for my trackpad I'm getting these errors #264
2020-03-27 19:13:40.229840+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.229962+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.230083+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.230206+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.230401+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.236813+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.236935+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.237070+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.237210+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.237336+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.237555+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.237672+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.237793+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.237948+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.312180+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.312314+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.312435+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.312553+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.312663+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.312783+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2
2020-03-27 19:13:40.312902+0200 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP:InterruptOccurred:Failed on attemptAction(). Error code = 2

With the versions that has the drag and drop problem , I'm not getting these type of errors.

VoodooGPIO: 8507d8ddb0c057d46c111ed20ff4126e5212c017
VoodooI2C: ceca349a3466a0734b6099ea0523b6ddc11b5bc0
VoodooI2C.kext.zip

Still the same

@kprinssu, I have no idea what is the problem. I checked out revisions without my fixes, but problem still exists, Could you have a look, please?

@lvs1974 @marianopela I suspect it's either of these changes that I merged in from @Erictoby:

  • VoodooGPIO (https://github.com/alexandred/VoodooGPIO/commit/3f42a0b99543f04673d7b8b38fe64a0aef2fb30a)

The IOWorkLoop was removed and I suspect the parent IOWorkLoop is getting backed up with the interrupt requests. It's causing a bottleneck when the "interrupt handle" threads are waiting on the loop.

Can you guys try reverting that change and see what happens?

@lvs1974 can we chat via iMessage?

@kprinssu, thank you for suggestion.
I took VoodooGPIO: 8507d8ddb0c057d46c111ed20ff4126e5212c017 (1 Nov 2019) and removed getWorkLoop method.
@Mateo1234454545, could you try, please?
VoodooI2C.kext.zip

@Mateo1234454545, could you try, please?
VoodooI2C.kext.zip

That's it.
Everything seems fine. I will keep monitoring.

Can I ask something?
Is voodooinput.kext necessary ? My touchpad works the same without it.

@Mateo1234454545 you definitely need VoodooInput, otherwise your trackpad won't send the touch events to Apple's MT stack.

@lvs1974 can you please create a PR, I'll merge it in ASAP and close this ticket.

@kprinssu , problem with drag and drop solved. But touchpad feels a little less responsive.

And I don't think @Erictoby's commits are the problem.
Without them my touchpad was very laggy.

@kprinssu > can you please create a PR, I'll merge it in ASAP and close this ticket.

I don't quite follow you. PR for VoodooI2CHID is ready.
VoodooGPIO it is a different repository (where getWorkflowLoop() should be removed).

@Mateo1234454545, could you test one more time, please?
And put also the latest build VoodooInput (was attached here previously).
Release.zip

Tried but problem with drag and drop is back.

And there is problem with 2 finger scrolling (e.g. os safari). Sometimes freezes.

Ok, and with this build (latest sources + added getWorkLoop() method):
Release.zip

Scrolling working.

Drag and drop works but it seems too sensitive.
For example when you drag and drop a file , it does ,but when you release the touchpad the file is selected for rename , like you double-clicked on it.

@Mateo1234454545, could you try this VoodooInput + VoodooI2C + VoodooI2CHID:
VoodooInput-1.0.4-RELEASE.zip
Release.zip

@lvs1974 , it is worse than before. Drag and drop almost not usable.

So, It proves that VoodooInput also has big influence on that issue.
Try to replace only VoodooInput.
I don't want to use this strange method getWorkLoop(), anyway it is not reliable.
VoodooInput.zip

Better than the previous , scrolling is ok.
But drag and drop is buggy.

@Mateo1234454545, can you test a polling mode, please?
After I will buil one more Voodooinput.

I used geni2c to generate polling mode , but my tuchpad didn't work
Don't know how to do it.
Here are my files if you you have the time to try.
files.zip

@Mateo1234454545, could you try this one:
VoodooInput-1.0.4-RELEASE.zip

@Mateo1234454545, I also have a question regarding your version VoodooI2C Mar 27 (you attached it before in this topic).
Did you build it yourself? On 27 March, from master? With all current (for that moment ) submodules?
It seems very strange for me that it can work without VoodooInput.kext: on 22 Mar VoodooI2CMT2SimulatorDevice.cpp was deleted, so all versions built from master after 22 Mar cannot work without VoodooInput.kext.
We need to find some point, where I can build VoodooI2C with Satellites, and this build will work stable on your machine. For example, what if I get sources from master for Mar 24, 2020 and build version. Will it work without any lags on you laptop?

No drag and drop still very buggy. Also , three-fingers swipe doesn't work.

The build of 27March I found it on daliansky's repo.
Even the files you are sending me are working without voodooinput.kext

For your last question , my touchpad worked ok until release 2.1 (if I rememer correctly). All the releases after made my touchpad freeze for about 2-3secs. I had to use @Erictoby's release which worked very well.
Untill @daliansky's 27Mar release which is also working very well. But I don't know what commits are on there.

@Mateo1234454545, in that case this is a wrong way to find a root cause.
Since release 2.1 related to this master branch there were a huge amount of commits, and it is useless - try to find something with the latest sources.
I think you need to contact to @daliansky in order to find out a branch and exact date (or even better exact revision) of sources used to build this version. It can be something completely different, with specific set of patches.

@Mateo1234454545

Could you please clarify which repo did you use to get the files? I've sent several versions of VoodooI2C to Daliansky I built recently and I can track the version.

P.S. People in Daliansky's chat group didn't have the proper skills and environment to build the kext.

@Mateo1234454545, if your touchpad works even without VoodooInput, it means it supports PS2 interface, and probably kexts from VoodooPS2Controller.kext (VoodooPS2Trackpad.kext) are working in this case.
My touchpad does not support PS2 interface and does not work without VoodooInput kext.

Ok, this was compiled by steve, I thought you used the version from the XiaoXin repo, I'll contact him ASAP.
CC @stevezhengshiqi

Great.
@lvs1974 @williambj1 , if you want please help me try polling mode at gitter.

@Mateo1234454545, it seems your touchpad is configured improperly for interrupt mode.
What is your hexadecimal APIC pin number, 0x33 or something different?
You did not change gpio pin number also.
Your _CRS method returns something unknown, it depends on variable SDM0, but for interrupt mode it should always return Return (ConcatenateResTemplate (SBFB, SBFG)).
May be you should try to do setup of your touchpad from scratch?
Perform GPIO pinning - find out pin number and so on...
https://github.com/alexandred/VoodooI2C/blob/master/Documentation/GPIO%20Pinning.md

@williambj1 I believe I use VoodooI2C v2.3 + https://github.com/alexandred/VoodooI2C/pull/254 and the VoodooI2CHID until commit https://github.com/alexandred/VoodooI2CHID/commit/2f6537709c51743fde943804eee0e65642762277. I am not so sure about that. Some latest commits also break my trackpad so I reverse back a lot of commits.

@Mateo1234454545, from your config I also found out:
Your proper device name is TPD0 (according to ioreg), and you set OSYS to 0x07DC in SSDT-TPD0.aml, but what about SDM0 value? Who knows what is stored in this variable?

@Mateo1234454545, it seems your touchpad is configured improperly for interrupt mode.
What is your hexadecimal APIC pin number, 0x33 or something different?
You did not change gpio pin number also.
Your _CRS method returns something unknown, it depends on variable SDM0, but for interrupt mode it should always return Return (ConcatenateResTemplate (SBFB, SBFG)).
May be you should try to do setup of your touchpad from scratch?
Perform GPIO pinning - find out pin number and so on...
https://github.com/alexandred/VoodooI2C/blob/master/Documentation/GPIO%20Pinning.md

I do not have IOInterruptSpecifiers so I procceded on installing the kext.
My gpio pin is 0x1b
Screen Shot 2020-04-04 at 17.13.07.pdf

@Mateo1234454545, but what if you boot without VoodooI2C and check ioreg? IOService, TPD0?
Is there IOInterruptSpecifiers?

Without it my APIC pin is 0x33.
I tried to follow the guide but I'm very confussed.
My dsdt if very messy.
Any help would be appreciated.

@Mateo1234454545, if you APIC is 0x33, it means your GPIO pin 0x1B (default in DSDT) is wrong.
And your interrupt mode works incorrectly.

For hexadecimal APIC 0x33 us can use my calculations (I also have 0x33):
hexadecimal APIC pin number = 0x33

GPP_B3_IRQ = 0x33 https://github.com/coreboot/coreboot/blob/master/src/soc/intel/cannonlake/include/soc/gpio_defs_cnp_h.h#L42
GPP_B3 = 28 https://github.com/coreboot/coreboot/blob/master/src/soc/intel/cannonlake/include/soc/gpio_soc_defs_cnp_h.h#L74
GPP identifier = B

CNL_GPP(1, 25, 50, 32),             /* GPP_B */    https://github.com/coolstar/VoodooGPIO/blob/master/VoodooGPIO/CannonLake-H/VoodooGPIOCannonLakeH.hpp#L416
num, base, end, gpio_base

28 - 25 (base) + 32 (gpio_base) = 35 = 0x23

GPP_F3_IRQ = 0x33
GPP_F3 = 219
GPP identifier = F

CNL_GPP(3, 216, 239, 288),

219 - 216 (base) + 288 = 291 = 0x123

GPP_J3_IRQ = 0x33
GPP_J3 = 290
GPP identifier = J

CNL_GPP(3, 287, 298, 352)

290 - 287 (base) + 352 = 0x163

you also can try some of the common values such as 0x17, 0x1B, 0x34 and 0x55.

Everything is described in documentation for VoodooI2C.
Please read it!

@lvs1974 , thank you again.
I really tried but I cannot manage it.

@Mateo1234454545, you should add a following ssdt:
SSDT-I2C.dsl.zip

You also need to remove SSDT-TPD0.aml from config.plist.

But you also need to patch your DSDT:
GPIO: change _STA to XSTA in device GPI0 (TouchPad I2C), pair with SSDT-I2C.aml

A4 52 42 55 46 14 1D 5F 53 54 41 00

A4 52 42 55 46 14 1D 58 53 54 41 00

I2C0: _SB.PCI0.I2C0._CRS to XCRS, pair with SSDT-I2C.aml -> Touchpad fix

5F 43 52 53 00 A0 0E 95 4F 53 59 53 0B DC 07 A4 53 42 46 49

58 43 52 53 00 A0 0E 95 4F 53 59 53 0B DC 07 A4 53 42 46 49

After applying all of these fixes, reboot and run MaciASL.
You should be able to find method XSTA in GPI0, and method XCRS in I2C0.
If you can find them - patch worked and new methods from SSDT-I2C.aml replaced them.
Then run IORegistryExplorer, find TPD0 and check whether gpioPin is 0x23.

First , I had to change i2c1 value to i2c0 and tpd1 to tpd0 in ssdt-i2c.aml , since these are the correct values from my trackpad. Right?

Geni2c shows touchpad in interrupt mode with pin 0x23 , but touchpad not working at all

Sending system dsdt with maciasl and ioreg.
Screen Shot 2020-04-04 at 19.06.42.pdf

2020-04-04 19:01:12.180243+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::Loading GPIO Data for SunrisePoint-LP
2020-04-04 19:01:12.180300+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Init!
2020-04-04 19:01:12.180302+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 0
2020-04-04 19:01:12.180354+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 1
2020-04-04 19:01:12.180390+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 2
2020-04-04 19:01:12.180523+0300 localhost kernel[0]: (VoodooGPIO) VoodooGPIOSunrisePointLP::GPIO Controller is already awake! Not reinitializing.
2020-04-04 19:01:12.188559+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CSensorHubEnabler::INT33D0 Found Intel ACPI Sensor Hub Enabler
2020-04-04 19:01:12.188640+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CSensorHubEnabler::INT33D0 Enabled Sensor Hub
2020-04-04 19:01:12.217599+0300 localhost kernel[0]: (VoodooI2C) VoodooI2CPCIController::pci8086,9d60 Starting I2C controller
2020-04-04 19:01:12.217792+0300 localhost kernel[0]: (VoodooI2C) VoodooI2CPCIController::pci8086,9d60 Set PCI power state D0
2020-04-04 19:01:12.219419+0300 localhost kernel[0]: (VoodooI2C) VoodooI2CPCIController::pci8086,9d60 Publishing nub
2020-04-04 19:01:12.220247+0300 localhost kernel[0]: (VoodooI2C) VoodooI2CControllerDriver::pci8086,9d60 Probing controller
2020-04-04 19:01:28.792875+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 19055096955
2020-04-04 19:01:28.869367+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 19131601320
2020-04-04 19:01:29.219874+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 19482073019
2020-04-04 19:01:29.276131+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 19538330242
2020-04-04 19:01:29.676257+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 19938488727
2020-04-04 19:01:29.758717+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20020914991
2020-04-04 19:01:29.978773+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20240983983
2020-04-04 19:01:30.041723+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20303926829
2020-04-04 19:01:30.142467+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20404701614
2020-04-04 19:01:30.185570+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20447811361
2020-04-04 19:01:30.615383+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20877584615
2020-04-04 19:01:30.678525+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20940770614
2020-04-04 19:01:30.804952+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21067180576
2020-04-04 19:01:30.875477+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21137712669
2020-04-04 19:01:30.956602+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21218829724
2020-04-04 19:01:31.016111+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21278345936
2020-04-04 19:01:31.086269+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21348496006
2020-04-04 19:01:31.157536+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21419767609
2020-04-04 19:01:31.324288+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21586532130
2020-04-04 19:01:31.390448+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21652691576
2020-04-04 19:01:31.584435+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21846625072
2020-04-04 19:01:31.643971+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21906206435
2020-04-04 19:01:32.844173+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 22281216930
2020-04-04 19:01:32.930878+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 22367912505
2020-04-04 19:01:34.458643+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::setProperties USBMouseStopsTrackpad = 0
2020-04-04 19:02:58.808998+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108246046837
2020-04-04 19:02:58.890931+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108327980418
2020-04-04 19:02:59.011310+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108448363077
2020-04-04 19:02:59.064349+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108501399344
2020-04-04 19:02:59.127024+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108564073039
2020-04-04 19:02:59.197621+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108634681346
2020-04-04 19:02:59.243054+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108680107425
2020-04-04 19:02:59.325883+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108762931385
2020-04-04 19:02:59.343808+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108780857170
2020-04-04 19:02:59.406640+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108843693009
2020-04-04 19:02:59.475344+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108912393730
2020-04-04 19:02:59.534979+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 108972028764
2020-04-04 19:03:03.579194+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 113016242552
2020-04-04 19:03:03.642081+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 113079131495
2020-04-04 19:03:03.712145+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 113149191238
2020-04-04 19:03:03.785503+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 113222553035
2020-04-04 19:03:03.949997+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 113387005903
2020-04-04 19:03:04.020166+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 113457193633
2020-04-04 19:03:18.575088+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 128012136705
2020-04-04 19:03:18.645242+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 128082307405
2020-04-04 19:03:18.726864+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 128163913275
2020-04-04 19:03:18.793063+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 128230110912
2020-04-04 19:03:19.081678+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 128518726571
2020-04-04 19:03:19.141148+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 128578197412
2020-04-04 19:03:19.645266+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 129082314854
2020-04-04 19:03:19.708937+0300 localhost kernel[0]: (VoodooI2CHID) VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 129145980055

CATALINA.ioreg.zip
System DSDT.dsl.zip

@Mateo1234454545, yes that is right - you need fix names.
Please get logs with dmesg (sudo dmesg | grep -i voodoo), and size of msgbuf into boot-arg (see in this topic). You will see much more info:

Mine output:
VoodooGPIOCannonLakeH::Loading GPIO Data for CannonLake-H VoodooGPIOCannonLakeH::VoodooGPIO Init! VoodooGPIOCannonLakeH::VoodooGPIO Initializing Community 0 VoodooGPIOCannonLakeH::VoodooGPIO Initializing Community 1 VoodooGPIOCannonLakeH::VoodooGPIO Initializing Community 2 VoodooGPIOCannonLakeH::VoodooGPIO Initializing Community 3 VoodooGPIOCannonLakeH::GPIO Controller is already awake! Not reinitializing. VoodooI2CPCIController::pci8086,a368 Starting I2C controller VoodooI2CPCIController::pci8086,a369 Starting I2C controller VoodooI2CPCIController::pci8086,a368 Set PCI power state D0 VoodooI2CPCIController::pci8086,a369 Set PCI power state D0 VoodooI2CPCIController::pci8086,a368 Publishing nub VoodooI2CPCIController::pci8086,a369 Publishing nub VoodooI2CControllerDriver::pci8086,a369 Probing controller VoodooI2CControllerDriver::pci8086,a369 Found valid Synopsys component, continuing with initialisation VoodooI2CControllerDriver::pci8086,a369 Got bus configuration values VoodooI2CControllerDriver::pci8086,a369 Publishing device nubs VoodooI2CControllerDriver::pci8086,a369 Found I2C device: DELL0922 VoodooI2CDeviceNub::Got GPIO Controller! VoodooGPIOCannonLakeH VoodooI2CControllerDriver::pci8086,a368 Probing controller VoodooI2CControllerDriver::pci8086,a368 Found valid Synopsys component, continuing with initialisation VoodooI2CControllerDriver::pci8086,a368 Got bus configuration values VoodooI2CControllerDriver::pci8086,a368 Publishing device nubs VoodooI2CHIDDevice:0x1000003cc start VoodooGPIOCannonLakeH::Registering hardware pin 0x1C for GPIO IRQ pin 0x23 VoodooI2CHIDDevice:0x1000003cc creating interfaces VoodooI2CHIDDevice:0x1000003cc open by VoodooI2CPrecisionTouchpadHIDEventDriver 0x10000040e (0x0) VoodooInputSimulatorDevice:0x100000414 start VoodooI2CPrecisionTouchpadHIDEventDriver::DELL0922 Putting device into Precision Touchpad Mode VoodooInputActuatorDevice:0x100000417 start VoodooInputSimulatorDevice:0x100000414 creating interfaces VoodooInputActuatorDevice:0x100000417 creating interfaces VoodooInputSimulatorDevice:0x100000414 open by AppleMultitouchTrackpadHIDEventDriver 0x10000041c (0x0) VoodooInputActuatorDevice:0x100000417 open by AppleActuatorHIDEventDriver 0x100000422 (0x0) ApplePS2Controller: Notification consumer published: VoodooI2CPrecisionTouchpadHIDEventDriver ALF, old data swfs_pid_entry <ptr>, updaterules_msg <ptr>, updaterules_state <ptr>VoodooI2CPrecisionTouchpadHIDEventDriver::setProperties USBMouseStopsTrackpad = 0

The most important:
VoodooI2CHIDDevice:0x1000003cc start VoodooGPIOCannonLakeH::Registering hardware pin 0x1C for GPIO IRQ pin 0x23

You can also try to another pin numbers (selected in bold font).

High-Sierra:~ mathewg$ sudo dmesg | grep -i voodoo
Password:
VoodooI2CSensorHubEnabler::INT33D0 Found Intel ACPI Sensor Hub Enabler
VoodooI2CSensorHubEnabler::INT33D0 Enabled Sensor Hub
VoodooGPIOSunrisePointLP::Loading GPIO Data for SunrisePoint-LP
VoodooGPIOSunrisePointLP::VoodooGPIO Init!
VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 0
VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 1
VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 2
VoodooGPIOSunrisePointLP::GPIO Controller is already awake! Not reinitializing.
VoodooI2CPCIController::pci8086,9d60 Starting I2C controller
VoodooI2CPCIController::pci8086,9d60 Set PCI power state D0
VoodooI2CPCIController::pci8086,9d60 Publishing nub
VoodooI2CControllerDriver::pci8086,9d60 Probing controller
VoodooI2CControllerDriver::pci8086,9d60 Found valid Synopsys component, continuing with initialisation
VoodooI2CControllerDriver::pci8086,9d60 Got bus configuration values
VoodooI2CControllerDriver::pci8086,9d60 Publishing device nubs
VoodooI2CControllerDriver::pci8086,9d60 Found I2C device: DELL0810
VoodooI2CDeviceNub::Got GPIO Controller! VoodooGPIOSunrisePointLP
VoodooGPIOSunrisePointLP::Registering hardware pin 35 for GPIO IRQ pin 35
VoodooI2CHIDDevice::DELL0810 Timeout waiting for device to complete host initiated reset
Report bytes: input:28 output:1 feature:257Collections : 12Buttons : input:4 output:0 feature:2Values : input:11 output:0 feature:6Element value capacity 12136Report count: 11Report ID: 0 input:0 output:0 feature:0Report ID: 6 input:48 output:8 feature:8Report ID: 1 input:80 output:8 feature:8Report ID: 2 input:8 output:8 feature:24Report ID: 3 input:8 output:8 feature:2056Report ID: 4 input:8 output:8 feature:16Report ID: 5 input:8 output:8 feature:16Report ID: 7 input:8 output:8 feature:64Report ID: 9 input:224 output:8 feature:8Report ID: 10 input:224 output:8 feature:8Report ID: 8 input:8 output:8 feature:1080Report bytes: input:1388 output:1 feature:1Collections : 5Buttons : input:2 output:0 feature:0Values : input:3 output:0 feature:0Element value capacity 36736Report count: 4Report ID: 0 input:0 output:0 feature:0Report ID: 2 input:64 output:8 feature:8Report ID: 63 input:136 output:8 feature:8Report ID: 68 input:11104 output:8 feature:8Report bytes: input:16 output:64 feature:1Collections : 2Buttons : input:0 output:0 feature:0Values : input:1 output:1 feature:0Element value capacity 2052Report count: 3Report ID: 0 input:0 output:0 feature:0Report ID: 63 input:128 output:8 feature:8Report ID: 83 input:8 output:512 feature:8VoodooI2CPrecisionTouchpadHIDEventDriver::DELL0810 Putting device into Precision Touchpad Mode
ApplePS2Controller: Notification consumer published: VoodooI2CPrecisionTouchpadHIDEventDriver
ALF, old data swfs_pid_entry , updaterules_msg , updaterules_state VoodooI2CPrecisionTouchpadHIDEventDriver::setProperties USBMouseStopsTrackpad = 0

I don't understand what the problem is. Tried all other pins but nothing worked.
In settings touchpad settings appear correctly.

Tried with opencore , too.

VoodooGPIOSunrisePointLP::Loading GPIO Data for SunrisePoint-LP
VoodooGPIOSunrisePointLP::VoodooGPIO Init!
VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 0
VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 1
VoodooGPIOSunrisePointLP::VoodooGPIO Initializing Community 2
VoodooGPIOSunrisePointLP::GPIO Controller is already awake! Not reinitializing.
VoodooI2CSensorHubEnabler::INT33D0 Found Intel ACPI Sensor Hub Enabler
VoodooI2CSensorHubEnabler::INT33D0 Enabled Sensor Hub
AppleNVMe Assert failed: ( 0 != data ) ReleaseIDNode file: /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/IONVMeFamily/IONVMeFamily-470.100.17/IONVMeController.cpp line: 5478 VoodooI2CPCIController::pci8086,9d60 Starting I2C controller
VoodooI2CPCIController::pci8086,9d60 Set PCI power state D0
VoodooI2CPCIController::pci8086,9d60 Publishing nub
VoodooI2CControllerDriver::pci8086,9d60 Probing controller
VoodooI2CControllerDriver::pci8086,9d60 Found valid Synopsys component, continuing with initialisation
VoodooI2CControllerDriver::pci8086,9d60 Got bus configuration values
VoodooI2CControllerDriver::pci8086,9d60 Publishing device nubs
VoodooI2CControllerDriver::pci8086,9d60 Found I2C device: DELL0810
VoodooI2CDeviceNub::Got GPIO Controller! VoodooGPIOSunrisePointLP
VoodooI2CHIDDevice:0x100000359 start
VoodooGPIOSunrisePointLP::Registering hardware pin 0x23 for GPIO IRQ pin 0x23
VoodooI2CHIDDevice::DELL0810 Timeout waiting for device to complete host initiated reset
VoodooI2CHIDDevice:0x100000359 creating interfaces
VoodooI2CHIDDevice:0x100000359 open by VoodooI2CPrecisionTouchpadHIDEventDriver 0x100000381 (0x0)
VoodooI2CMT2SimulatorDevice:0x100000386 start
VoodooI2CMT2ActuatorDevice:0x100000388 start
VoodooI2CMT2SimulatorDevice:0x100000386 creating interfaces
VoodooI2CMT2ActuatorDevice:0x100000388 creating interfaces
VoodooI2CMT2ActuatorDevice:0x100000388 open by AppleActuatorHIDEventDriver 0x10000038d (0x0)
VoodooI2CPrecisionTouchpadHIDEventDriver::DELL0810 Putting device into Precision Touchpad Mode
VoodooI2CMT2SimulatorDevice:0x100000386 open by AppleMultitouchTrackpadHIDEventDriver 0x100000390 (0x0)
ApplePS2Controller: Notification consumer published: VoodooI2CPrecisionTouchpadHIDEventDriver
Sandbox: 1 duplicate report for systemstats deny(1) mach-lookup com.apple.tccd.systemSandbox: digest-service(225) deny(1) file-read-metadata /private/var/run/systemkeychaincheck.doneSandbox: digest-service(225) deny(1) network-outbound /private/var/run/systemkeychaincheck.socketVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 19894150154
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 19973500007
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20106341474
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20176302976
ALF, old data swfs_pid_entry , updaterules_msg , updaterules_state ALF, hash_free: found kext_info VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20273951723
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20319726770
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20399788449
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20459225779
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20651743548
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20713978871
Sandbox: trustd(164) deny(1) mach-lookup com.apple.AppSSO.service-xpcALF, old data swfs_pid_entry , updaterules_msg , updaterules_state ALF, hash_free: found kext_info VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 20945715841
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21008399401
[IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count[IGFB][ERROR ] updateSliceConfig Requesting Invalid EU CountVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21533757233
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 21586654520
VoodooI2CPrecisionTouchpadHIDEventDriver::setProperties USBMouseStopsTrackpad = 0
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 48848479182
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 48915685888
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 49042862555
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 49156709314
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 49216940032
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 49286699937
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 49319731855
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 49395999969
Sandbox: SafariCloudHisto(525) deny(1) file-read-metadata /Users/mathewgSandbox: SafariCloudHisto(525) deny(1) file-read-data /Library/Preferences/.GlobalPreferences.plistVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 59717230454
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 59796861471
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 59891639664
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 59947883614
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 60306688339
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 60362862821
Sandbox: secd(314) deny(1) system-fsctl _IO('h', 47)VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 60584636099
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 60640781413
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 60827495474
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 60901613770
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 61235614930
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 61319465613
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 62345724663
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 62412257633
Sandbox: com.apple.WebKit(438) allow iokit-open RootDomainUserClientALF, old data swfs_pid_entry , updaterules_msg , updaterules_state ALF, hash_free: found kext_info Sandbox: com.apple.WebKit(437) allow mach-lookup com.apple.awddALF, old data swfs_pid_entry , updaterules_msg , updaterules_state ALF, hash_free: found kext_info ALF, old data swfs_pid_entry , updaterules_msg , updaterules_state ALF, hash_free: found kext_info Sandbox: com.apple.WebKit(543) allow mach-lookup com.apple.coreservices.launchservicesdSandbox: com.apple.WebKit(543) allow mach-lookup com.apple.lsd.mapdbSandbox: com.apple.WebKit(543) allow iokit-open RootDomainUserClientVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 83549022210
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 83612268414
ALF, old data swfs_pid_entry , updaterules_msg , updaterules_state ALF, hash_free: found kext_info Sandbox: com.apple.WebKit(545) allow mach-lookup com.apple.coreservices.launchservicesdSandbox: com.apple.WebKit(545) allow mach-lookup com.apple.lsd.mapdbVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 83737922623
Sandbox: com.apple.WebKit(545) allow iokit-open RootDomainUserClientVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 83790822887
Sandbox: com.apple.WebKit(546) allow mach-lookup com.apple.coreservices.launchservicesdSandbox: com.apple.WebKit(546) allow mach-lookup com.apple.lsd.mapdbSandbox: com.apple.WebKit(546) allow iokit-open RootDomainUserClientSandbox: com.apple.WebKit(546) allow mach-lookup com.apple.awddVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 84081723361
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 84151166946
Sandbox: com.apple.WebKit(437) deny(1) mach-lookup com.apple.system.loggerVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 84508572790
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 84597389919
Sandbox: com.apple.WebKit(547) allow mach-lookup com.apple.coreservices.launchservicesdSandbox: com.apple.WebKit(547) allow mach-lookup com.apple.lsd.mapdbVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 84874588495
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 84951025975
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85015568918
ALF, old data swfs_pid_entry , updaterules_msg , updaterules_state ALF, hash_free: found kext_info VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85089290749
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85201108600
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85254019371
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85327797523
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85403797975
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85622354940
Sandbox: bluetoothd(114) deny(1) mach-lookup com.apple.server.bluetoothVoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 85680776377
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 100733317751
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 100792544173
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 101553323945
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 101622693455
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 101750837753
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 101826858403
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 101900287515
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 101959813711
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 102029741201
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 102092564732
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 102259402885
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 102324500938
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 102512146976
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 102581646217
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 103000035487
VoodooI2CPrecisionTouchpadHIDEventDriver::keyPressed = 103049322420

@Mateo1234454545, I have read manual one more time, and I have found a difference:
you have Sunrise Point, and I have Cannon Point-H. For Cannon Point calculations are different.
So, your right pin numbers: 0x1B and 0x7B. You can also try 0x17, 0x34 and 0x55.
So, 0x1B was correct value, sorry.

@Mateo1234454545 please use VoodooI2C's Gitter channel for general setup and help. I am going to close this ticket as the original problem has been addressed.

@Mateo1234454545, I have read manual one more time, and I have found a difference:
you have Sunrise Point, and I have Cannon Point-H. For Cannon Point calculations are different.
So, your right pin numbers: 0x1B and 0x7B. You can also try 0x17, 0x34 and 0x55.
So, 0x1B was correct value, sorry.

So , you mean that my touchpad is correctly configured for interrupt after all?

@Mateo1234454545: pin was correct, but code in DSDT probably not.
Now, in SSDT-I2C.dsl you can try another pins.
And you definitely can try polling mode, since you can easily change SSDT-I2C.dsl for polling mode: https://github.com/alexandred/VoodooI2C/blob/master/Documentation/Polling%20Mode.md
In _CRS must be Return (ConcatenateResTemplate (SBFB, SBFI)) or Return (SBFB).
BTW: I prefer polling mode since CPU usage is less than in interrupt mode.

Will try.

I think I found the problem with the buggy touchpad with latest commits.
If I use @daliansky's version of 27Mar , voodooinput.kext doesn't load and my touchpad works great.
With latest commits without voodooinput touchpad is not recognised at all. With voodooinput is is recognised but is buggy as described.
So, problem is with voodooinput.kext. It needs optimisation or it is not needed at all for my touchpad.

I feel like I'm late to the party, but I've been trying to get interrupts mode working for a long time, and after all today trying, I finally got to something similar to what @Mateo1234454545 was getting
log.txt

I tried several pins and 0x0108 is the only one with this behaviour. I'm also quite sure it's the right one. Has this ever happened to any of you?

I feel like I'm late to the party, but I've been trying to get interrupts mode working for a long time, and after all today trying, I finally got to something similar to what @Mateo1234454545 was getting
log.txt

I tried several pins and 0x0108 is the only one with this behaviour. I'm also quite sure it's the right one. Has this ever happened to any of you?

It should be fixed after merging https://github.com/alexandred/VoodooGPIO/pull/3

It should be fixed after merging alexandred/VoodooGPIO#3

Yep, confirmed. Unfortunately my trackpad is still not working in interrupts mode, but at least it's simpler to debug. Thanks again

@Mateo1234454545: pin was correct, but code in DSDT probably not.
Now, in SSDT-I2C.dsl you can try another pins.
And you definitely can try polling mode, since you can easily change SSDT-I2C.dsl for polling mode: https://github.com/alexandred/VoodooI2C/blob/master/Documentation/Polling%20Mode.md
In _CRS must be Return (ConcatenateResTemplate (SBFB, SBFI)) or Return (SBFB).
BTW: I prefer polling mode since CPU usage is less than in interrupt mode.

Thats strange. In documentation I found, exactly oposite information:

However you can consider polling as software-driven and interrupts as hardware-driven. Naturally, polling uses more system resources (such as CPU and RAM) so the optimal mode that VoodooI2C should run in is interrupt mode.

Thats strange. In documentation I found, exactly oposite information:

They also say this

If you find that you cannot get your trackpad to work in interrupts mode or that interrupts mode leads to high CPU usage then it is likely you have a system with a buggy implementation of GPIO. In this case you will have to switch back to polling mode

@Mateo1234454545: pin was correct, but code in DSDT probably not.
Now, in SSDT-I2C.dsl you can try another pins.
And you definitely can try polling mode, since you can easily change SSDT-I2C.dsl for polling mode: https://github.com/alexandred/VoodooI2C/blob/master/Documentation/Polling%20Mode.md
In _CRS must be Return (ConcatenateResTemplate (SBFB, SBFI)) or Return (SBFB).
BTW: I prefer polling mode since CPU usage is less than in interrupt mode.

Thats strange. In documentation I found, exactly oposite information:

However you can consider polling as software-driven and interrupts as hardware-driven. Naturally, polling uses more system resources (such as CPU and RAM) so the optimal mode that VoodooI2C should run in is interrupt mode.

That was true before optimisation for polling mode was done, and it is not true for modern CPUs. If I press one finger and keep it - I have 14-15% CPU usage, and it I press and keep two - I have 28-30% CPU usage.
In polling mode I have 7-8% CPU usage in any touchpad usage scenario, and ~1% if touchpad is idle (0.5% in interrupt mode).

Thank you for explanation. I will need to do more investigation about it. I'm using this SSDT patches - https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/commit/b7b95d740092a14b65cbf7c7bc198918789ccdc3

But I assuming this changes will come in future release of VoodooI2C.

For me is opposite.
Polling mode doesn't work well , cursor movement is buggy (my APIC pin is 0x33).
In Interrupts mode when press one or two fingers , cpu usage is 1-3%.

I know, that this is off topic, but there is my SSDT patches:
https://drive.google.com/open?id=1TeT5X3_3yPOWOt4vwsoE3WzdxAGtytGb

Can someone explain me, why my VoodooI2C kext working? I can see nothing related to I2C.

@Mateo1234454545 can you please tell me how you switch between polling and interrupt mode? I tried my own SSDT patch, but it seems not working.

@kecinzer please go to the VoodooI2C Gitter channel for help.

Problem solved with https://github.com/alexandred/VoodooI2C/pull/287 (also problem with drag and drop and 2 finger scroling) with EnableForceTouchEmulation set to False.

Was this page helpful?
0 / 5 - 0 ratings