Jump to content

Enable I2C Trackpad (VoodooI2C) - Not a Guide... not really


Recommended Posts

  • Administrators
Posted
1 hour ago, orbee said:

that's it, thanks- I had some problem with the ioreg dump, it failed 3 times

first remove these acpi renames, reboot and extract new sendme

NIqY9ja.png

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

  • Administrators
Posted

renames stay there

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

  • Administrators
Posted

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

  • Administrators
Posted

u need select rebase regions

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

Posted (edited)

Hello everyone.
I ask for help starting Trackpad.
I tried to do different SSDT-GPIOs, but nothing works.
 

My device is (I think so :-)

Device (TPD0)
Scope (_SB.PCI0.I2C0) ??? (But I'm not sure, because device TPD0 is in (_SB.PCI0.I2C1, _SB.PCI0.I2C2, _SB.PCI0.I2C3)


IOREG <28 00 00 00 03 00 00 00>

last try SSDT-GPIO-V5.aml. Does not work.

I just can't start. I ask for help.

DSDT_DSL.zip EFI 2.zip

Edited by member052018
  • Administrators
Posted
2 hours ago, Christopher G said:

I have an Acer SF314-56G with SYN1B7F touchpad

if work nice in polling jus enjoy

many devices don't work in interrupt mode

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

Posted (edited)

Polling works, but then the cpu usage jumps and lags the touchpad.

This post has the same hardware as mine 

Can you share the result with me?

Edited by Christopher G
  • Administrators
Posted

u have many acpi renames. not a clean efi folder

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

  • Administrators
Posted

opencore is not smart like clover. i need one full dump with runme.app with no renames and rebase regions select

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

Posted
On 10/14/2021 at 9:46 PM, member052018 said:

Hello everyone.
I ask for help starting Trackpad.
I tried to do different SSDT-GPIOs, but nothing works.
 

My device is (I think so :-)

Device (TPD0)
Scope (_SB.PCI0.I2C0) ??? (But I'm not sure, because device TPD0 is in (_SB.PCI0.I2C1, _SB.PCI0.I2C2, _SB.PCI0.I2C3)


IOREG <28 00 00 00 03 00 00 00>

last try SSDT-GPIO-V5.aml. Does not work.

I just can't start. I ask for help.

DSDT_DSL.zip 215.29 kB · 0 downloads EFI 2.zip 23.37 kB · 0 downloads

From DSDT.dsl above, i didn't see any TP device attached to I2C Bus. Re-check what is your TP device via Win

Posted
On 11/23/2021 at 1:02 PM, tasco11 said:

From DSDT.dsl above, i didn't see any TP device attached to I2C Bus. Re-check what is your TP device via Win

I think the TDP0. I did it according to the instructions, but I can't see the device name in Win.

Report_new.htm.zip

Posted

I'm following this as I'm using open-core :

https://dortania.github.io/Getting-Started-With-ACPI/Laptops/trackpad-methods/manual.html#create-osys-variable-under-i2c-scope

 

The first part helped me to enable GPI0 and now I can see it in, "IORegistryExplorer" , Here's the file I used:

 

SSDT-GPI0.dsl

// Source: https://github.com/daliansky/OC-little

DefinitionBlock("", "SSDT", 2, "DRTNIA", "GPI0", 0)

{

    External(\GPEN, FieldUnitObj)

   

    If (_OSI("Darwin"))

    {

        \GPEN = One

    }

 

}

 

I understood that putting One would make it go well.

 

I then used SSDT-XOSI.aml from:

https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-XOSI.aml

 

also this

  • XOSI Rename (Add this under ACPI -> Patch in your config.plist):
Comment String Change _OSI to XOSI
Enabled Boolean YES
Count Number 0
Limit Number 0
Find Data 5f4f5349
Replace Data 584f5349

 

Then added voodooi2c and voodooi2celan kexts from :

https://github.com/VoodooI2C/VoodooI2C/releases/tag/2.6.5

and now I get these in the EFI/opencore-2021-12-07-065738.txt :

03:504 02:553 OC: Prelinked injection VoodooI2C.kext () - Invalid Parameter
03:532 00:028 OC: Prelinked injection VoodooI2CELAN.kext () - Invalid Parameter

 

Any idea what to do now?

I added these two from the same order, in the end, so no dependency problem should happen as far as I know.

 

Report file is 3mb can't upload as the limit is 2.93MB here, so put it on google drive:

https://drive.google.com/file/d/1R1G4zYBi263VrUFea518r2kdu4oEkqkb/view?usp=sharing

Also VoodooPS2Trackpad is disabled in the config.plist 

Please also check the attachment, a bunch of useful pictures are there.

 

Archive.zip

Posted
2 hours ago, Steve Moretz said:

I'm following this as I'm using open-core :

https://dortania.github.io/Getting-Started-With-ACPI/Laptops/trackpad-methods/manual.html#create-osys-variable-under-i2c-scope

 

The first part helped me to enable GPI0 and now I can see it in, "IORegistryExplorer" , Here's the file I used:

 

SSDT-GPI0.dsl

// Source: https://github.com/daliansky/OC-little

DefinitionBlock("", "SSDT", 2, "DRTNIA", "GPI0", 0)

{

    External(\GPEN, FieldUnitObj)

   

    If (_OSI("Darwin"))

    {

        \GPEN = One

    }

 

}

 

I understood that putting One would make it go well.

 

I then used SSDT-XOSI.aml from:

https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-XOSI.aml

 

also this

  • XOSI Rename (Add this under ACPI -> Patch in your config.plist):
Comment String Change _OSI to XOSI
Enabled Boolean YES
Count Number 0
Limit Number 0
Find Data 5f4f5349
Replace Data 584f5349

 

Then added voodooi2c and voodooi2celan kexts from :

https://github.com/VoodooI2C/VoodooI2C/releases/tag/2.6.5

and now I get these in the EFI/opencore-2021-12-07-065738.txt :

03:504 02:553 OC: Prelinked injection VoodooI2C.kext () - Invalid Parameter
03:532 00:028 OC: Prelinked injection VoodooI2CELAN.kext () - Invalid Parameter

 

Any idea what to do now?

I added these two from the same order, in the end, so no dependency problem should happen as far as I know.

 

Report file is 3mb can't upload as the limit is 2.93MB here, so put it on google drive:

https://drive.google.com/file/d/1R1G4zYBi263VrUFea518r2kdu4oEkqkb/view?usp=sharing

Also VoodooPS2Trackpad is disabled in the config.plist 

Please also check the attachment, a bunch of useful pictures are there.

 

Archive.zip 529.1 kB · 0 downloads

Fixed it by adding a few more things to my config.plist kexts :)

I had some dependencies inside The VoodooI2C Kext.
Now GENI2C shows polling mode instead of interrupt mode.

Posted
On 12/7/2021 at 11:28 AM, Steve Moretz said:

Fixed it by adding a few more things to my config.plist kexts :)

I had some dependencies inside The VoodooI2C Kext.
Now GENI2C shows polling mode instead of interrupt mode.

How? Can you give more detail please. I have Mojave running great but touchpad not.

Posted (edited)

after tried many times, still not working

I followed voodooi2c guide carefully:

  • correct my ACPI ID is TPD1, and know my CPU is Broadwell no need GPI0 controller patch, and I2C Controller Patches?
  • Windows Emulation patch will done with SSDT-XOSI.aml
  • Look at IOInterruptSpecifiers to know the hexadecimal APIC pin number is 0x1e mean 30 in decimal, less than 47, then can proceed to install kexts.

But at Step Ensure I2C Serial bus name is correctly labelled, I not sure about it. Here is original method from DSDT:

_SB.PCI0.I2C1.TPD1:

        Device (TPD1)
        {
            Name (_ADR, One)  // _ADR: Address
            Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
            {
                If (LEqual (RDGI (0x35), One))
                {
                    Return (0xB0068C11)
                }
                Else
                {
                    Return (0xAF068C11)
                }
            }

            Name (_CID, "PNP0C50")  // _CID: Compatible ID
            Name (_UID, One)  // _UID: Unique ID
            Name (_S0W, 0x04)  // _S0W: S0 Device Wake State
            Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
            {
                If (LEqual (Arg0, ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
                {
                    If (LEqual (Arg2, Zero))
                    {
                        If (LEqual (Arg1, One))
                        {
                            Return (Buffer (One)
                            {
                                 0x03                                           
                            })
                        }
                        Else
                        {
                            Return (Buffer (One)
                            {
                                 0x00                                           
                            })
                        }
                    }

                    If (LEqual (Arg2, One))
                    {
                        Return (0x20)
                    }
                }
                Else
                {
                    Return (Buffer (One)
                    {
                         0x00                                           
                    })
                }
                Return (Zero)
            }

            Method (_STA, 0, NotSerialized)  // _STA: Status
            {
                If (LEqual (And (SDS1, 0x08), 0x08))
                {
                    Return (0x0F)
                }
                Else
                {
                    Return (Zero)
                }
            }

            Method (_CRS, 0, Serialized)  // _CRS: Current Resource Settings
            {
                Name (SBFI, ResourceTemplate ()
                {
                    I2cSerialBusV2 (0x002C, ControllerInitiated, 0x00061A80,
                        AddressingMode7Bit, "\\_SB.PCI0.I2C1",
                        0x00, ResourceConsumer, , Exclusive,
                        )
                    Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y2A)
                    {
                        0x0000001E,
                    }
                })
                If (LEqual (GR13, One))
                {
                    CreateDwordField (SBFI, \_SB.PCI0.I2C1.TPD1._CRS._Y2A._INT, VAL3)  // _INT: Interrupts
                    Store (0x1B, VAL3)
                }

                If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83)))
                {
                    CreateDwordField (SBFI, \_SB.PCI0.I2C1.TPD1._CRS._Y2A._INT, VAL4)  // _INT: Interrupts
                    Store (0x1A, VAL4)
                }

                Return (SBFI)
            }
        }

I renamed SBFI to SBFB and remove:

                    Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, _Y2A)
                    {
                        0x0000001E,
                    }

 

But can't compile, so I removed these too:

                })
                If (LEqual (GR13, One))
                {
                    CreateDwordField (SBFI, \_SB.PCI0.I2C1.TPD1._CRS._Y2A._INT, VAL3)  // _INT: Interrupts
                    Store (0x1B, VAL3)
                }

                If (LOr (LOr (LEqual (BID, 0x80), LEqual (BID, 0x82)), LEqual (BID, 0x83)))
                {
                    CreateDwordField (SBFI, \_SB.PCI0.I2C1.TPD1._CRS._Y2A._INT, VAL4)  // _INT: Interrupts
                    Store (0x1A, VAL4)
                }

 

Then compiled SSDT-TPD1.aml success (below attached files), put this SSDT-TPD1.aml in OC/ACPI and add to config.plist. Reboot and nothing change

Trackpad work like mouse, but Trackpad setting not show in system preferences, and nothing advance setting for trackpad in BIOS. Battery status + brighter slide working well

In IOReg, TPD1 show Interrupt mode is APIC, and can't see GPI0 - which I understand no need for Broadwell CPU right?1051016536_ScreenShot2022-09-08at19_52_19.png.085dbae0e5f1496e543d47c777005ad3.png

What were I missing? thank and regards!

HumanInterfaceDevice.png

Screen Shot 2022-09-08 at 20.16.00.png

Screen Shot 2022-09-08 at 20.15.40.png

 

With-SSDT-TPD1.ioreg

Without-SSDT-TPD1.ioreg

SSDT-TPD1.aml.zip

Edited by oldman20

Dell Inspiron 3558 (UEFI) - Intel Core i5 (5th Gen) 5200U /2.20GHz - 8GB RAM DDR3L - Intel(R) HD Graphics 5500/ nVIDIA GeForce 920M - 1366x768 - Realtek ALC255/ALC3234 @ Intel Wildcat Point-LP PCH - High Definition Audio Controller [F0]/ layout-id=20 - Intel(R) Dual Band Wireless-AC 3160 - Dell Touchpad /Synaptics I2C- Samsung SSD 860 EVO MZ-76E250BW 250GB (GPT) 

  • Administrators
Posted
42 minutes ago, oldman20 said:

after tried many times, still not working

use default olarila efi folder for ur hardware and post one sendme

-Guides and Tutorials HERE

-Hackintosh Tutorial Database - HERE

-The largest EFI folder collection for Hackintosh HERE

-Support Olarila Vanilla Hackintosh by making a donation HERE

-Professional Hackintosh Support since 2006 HERE

Posted (edited)
1 hour ago, MaLd0n said:

use default olarila efi folder for ur hardware and post one sendme

thank @MaLd0n, just "use default olarila efi folder" without modify anything for my CPU?

Here it is:

https://drive.google.com/file/d/1jjaYiC5Bp40w_jLu58qkRz96s3diQVgr/view?usp=sharing

RunMe-Output.txt.zip

Edited by oldman20

Dell Inspiron 3558 (UEFI) - Intel Core i5 (5th Gen) 5200U /2.20GHz - 8GB RAM DDR3L - Intel(R) HD Graphics 5500/ nVIDIA GeForce 920M - 1366x768 - Realtek ALC255/ALC3234 @ Intel Wildcat Point-LP PCH - High Definition Audio Controller [F0]/ layout-id=20 - Intel(R) Dual Band Wireless-AC 3160 - Dell Touchpad /Synaptics I2C- Samsung SSD 860 EVO MZ-76E250BW 250GB (GPT) 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...