oldman20 Posted September 8, 2022 Share Posted September 8, 2022 after tried many times, trackpad still not working Here is my devices: ~$ sudo dmesg | grep -i input [ 1.047936] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input0 [ 1.047995] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1 [ 1.048040] input: Sleep Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input2 [ 1.048079] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input3 [ 1.104768] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input4 [ 1.519008] input: DLL06B0:00 06CB:78F1 Mouse as /devices/pci0000:00/INT3433:00/i2c-1/i2c-DLL06B0:00/0018:06CB:78F1.0001/input/input7 [ 1.519138] hid-generic 0018:06CB:78F1.0001: input,hidraw0: I2C HID v1.00 Mouse [DLL06B0:00 06CB:78F1] on i2c-DLL06B0:00 [ 2.820686] input: Synaptics TM3096-001 as /devices/pci0000:00/INT3433:00/i2c-1/i2c-DLL06B0:00/0018:06CB:78F1.0001/input/input9 [ 2.820777] hid-rmi 0018:06CB:78F1.0001: input,hidraw0: I2C HID v1.00 Mouse [DLL06B0:00 06CB:78F1] on i2c-DLL06B0:00 [ 3.004622] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.0/0003:046D:C52B.0002/input/input10 [ 3.058075] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input11 [ 3.062976] hid-generic 0003:046D:C52B.0002: input,hidraw1: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-3/input0 [ 3.063079] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:1e/LNXVIDEO:01/input/input12 [ 3.065008] input: Logitech USB Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.1/0003:046D:C52B.0003/input/input13 [ 3.065153] input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.1/0003:046D:C52B.0003/input/input14 [ 3.122967] input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.1/0003:046D:C52B.0003/input/input15 [ 3.123094] hid-generic 0003:046D:C52B.0003: input,hiddev0,hidraw2: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-3/input1 [ 3.124604] hid-generic 0003:046D:C52B.0004: hiddev1,hidraw3: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-3/input2 [ 3.332372] logitech-djreceiver 0003:046D:C52B.0004: hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-3/input2 [ 3.455678] input: Logitech Wireless Device PID:4069 Keyboard as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.2/0003:046D:C52B.0004/0003:046D:4069.0005/input/input17 [ 3.455972] input: Logitech Wireless Device PID:4069 Mouse as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.2/0003:046D:C52B.0004/0003:046D:4069.0005/input/input18 [ 3.456383] hid-generic 0003:046D:4069.0005: input,hidraw2: USB HID v1.11 Keyboard [Logitech Wireless Device PID:4069] on usb-0000:00:14.0-3/input2:1 [ 3.576161] input: Logitech MX Master 2S as /devices/pci0000:00/0000:00:14.0/usb2/2-3/2-3:1.2/0003:046D:C52B.0004/0003:046D:4069.0005/input/input22 [ 3.576301] logitech-hidpp-device 0003:046D:4069.0005: input,hidraw2: USB HID v1.11 Keyboard [Logitech MX Master 2S] on usb-0000:00:14.0-3/input2:1 [ 6.353578] input: DELL Wireless hotkeys as /devices/virtual/input/input23 [ 6.867359] input: Integrated_Webcam_HD: Integrate as /devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/input/input24 [ 6.911204] input: Dell WMI hotkeys as /devices/platform/PNP0C14:01/wmi_bus/wmi_bus-PNP0C14:01/9DBB5994-A997-11DA-B012-B622A1EF5492/input/input25 [ 7.306338] input: HDA Intel HDMI HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:03.0/sound/card0/input26 [ 7.306428] input: HDA Intel HDMI HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:03.0/sound/card0/input27 [ 7.306506] input: HDA Intel HDMI HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:03.0/sound/card0/input28 [ 7.306580] input: HDA Intel HDMI HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:03.0/sound/card0/input29 [ 7.306660] input: HDA Intel HDMI HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:03.0/sound/card0/input30 [ 7.363204] snd_hda_codec_realtek hdaudioC1D0: inputs: [ 7.440736] input: HDA Intel PCH Headphone Mic as /devices/pci0000:00/0000:00:1b.0/sound/card1/input31 [ 14.133895] rfkill: input handler disabled [ 20.845540] rfkill: input handler enabled [ 26.242864] rfkill: input handler disabled 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, no gestures 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? What were I missing? thank and regards! With-SSDT-TPD1.ioreg Without-SSDT-TPD1.ioreg config.plist.zip SSDT-TPD1.aml.zip Link to comment Share on other sites More sharing options...
Baio77 Posted September 8, 2022 Share Posted September 8, 2022 Attach DSDT origin thank you 1 Link to comment Share on other sites More sharing options...
oldman20 Posted September 8, 2022 Author Share Posted September 8, 2022 5 hours ago, Baio77 said: Attach DSDT origin thank you Thank, below attached file! https://drive.google.com/file/d/1jjaYiC5Bp40w_jLu58qkRz96s3diQVgr/view?usp=sharing Link to comment Share on other sites More sharing options...
oldman20 Posted September 9, 2022 Author Share Posted September 9, 2022 with this ssdt + ssdt tpd1, and patches config, GPI0 exist and interrupt mode Polling, but in acpi-device show "i2c IOACPIPlatformDevice is not serializable", maybe it is reason? SSDT-GPI0.aml SSDT-XOSI.aml HackBook Pro-I2C-Polling.ioreg Link to comment Share on other sites More sharing options...
shl628 Posted September 10, 2022 Share Posted September 10, 2022 (edited) There are two VoodooI2C operation modes available in TPD1 Device: Interrupt (APIC) and Polling. Apply the SSDT below and reboot. SSDT-TPD1.aml.zip Also, Interrupt (GPIO) mode is not available on Intel 5th Gen Broadwell CPU systems. Therefore, there is no need to enable _STA of GPI0 Device. And, disable or delete the Rename _STA to XSTA patch of GPI0 Device. Additionally, "IOACPIPlatformDevice is not serializable" doesn't seem to have anything to do with the current touchpad not working. Edited September 10, 2022 by shl628 1 Link to comment Share on other sites More sharing options...
1Revenger1 Posted September 10, 2022 Share Posted September 10, 2022 (edited) I'm noticing from your Linux dmesg output that "hid-rmi" is used, so it may be worth trying VoodooRMI in place of VoodooI2CHID. I'm not seeing the Event Driver attach for precision trackpads so I'm guessing that it's not a generic HID trackpad, but a Synaptics device which uses RMI4. The APIC pin looks like it should work, I'm not sure why your original SSDT-TPD1.aml gets rid of that pin. Your right that you shouldn't need to do anything with the pin. I would try without the SSDT + patches when using VoodooRMI. Edited September 10, 2022 by 1Revenger1 2 Link to comment Share on other sites More sharing options...
oldman20 Posted September 10, 2022 Author Share Posted September 10, 2022 2 hours ago, shl628 said: There are two VoodooI2C operation modes available in TPD1 Device: Interrupt (APIC) and Polling. Apply the SSDT below and reboot. SSDT-TPD1.aml.zip 747 B · 2 downloads Also, Interrupt (GPIO) mode is not available on Intel 5th Gen Broadwell CPU systems. Therefore, there is no need to enable _STA of GPI0 Device. And, disable or delete the Rename _STA to XSTA patch of GPI0 Device. Additionally, "IOACPIPlatformDevice is not serializable" doesn't seem to have anything to do with the current touchpad not working. Your mean patch 10 + 11 should disable? I confused with _STA of GPI0, where? after tried you TPD1 with disable Rename _STA to XSTA patch, now IOReg show mode ACPI, not polling anymore, still can't detect in System Preferences panel, but trackpad still working like mouse, no guesture HackBook Pro1.ioreg 2 hours ago, 1Revenger1 said: I'm noticing from your Linux dmesg output that "hid-rmi" is used, so it may be worth trying VoodooRMI in place of VoodooI2CHID. I'm not seeing the Event Driver attach for precision trackpads so I'm guessing that it's not a generic HID trackpad, but a Synaptics device which uses RMI4. The APIC pin looks like it should work, I'm not sure why your original SSDT-TPD1.aml gets rid of that pin. Your right that you shouldn't need to do anything with the pin. I would try without the SSDT + patches when using VoodooRMI. thank, I trying your tip now Link to comment Share on other sites More sharing options...
shl628 Posted September 10, 2022 Share Posted September 10, 2022 You need to disable patch 10 and enable patch 11. Because _CRS Method in SSDT-TPD1.aml is used instead of _CRS in OEM DSDT, _CRS in OEM DSDT should be changed to XCRS. 1 Link to comment Share on other sites More sharing options...
oldman20 Posted September 10, 2022 Author Share Posted September 10, 2022 (edited) 2 hours ago, shl628 said: You need to disable patch 10 and enable patch 11. Because _CRS Method in SSDT-TPD1.aml is used instead of _CRS in OEM DSDT, _CRS in OEM DSDT should be changed to XCRS. 5 hours ago, 1Revenger1 said: I'm noticing from your Linux dmesg output that "hid-rmi" is used, so it may be worth trying VoodooRMI in place of VoodooI2CHID. I'm not seeing the Event Driver attach for precision trackpads so I'm guessing that it's not a generic HID trackpad, but a Synaptics device which uses RMI4. The APIC pin looks like it should work, I'm not sure why your original SSDT-TPD1.aml gets rid of that pin. Your right that you shouldn't need to do anything with the pin. I would try without the SSDT + patches when using VoodooRMI. I tried disable patch 10, enable patch 11 and use VoodooRMI but don't know is it working or trackpad from VoodooPS2? HackBook Pro-RMIIC.ioreg.zip Edited September 10, 2022 by oldman20 Link to comment Share on other sites More sharing options...
oldman20 Posted September 10, 2022 Author Share Posted September 10, 2022 and my trackpad working with some gesture on VoodooPS2, without IC2 kext. What's benefit of trackpad when work with I2C than VoodooPS2Trackpad kext? Link to comment Share on other sites More sharing options...
1Revenger1 Posted September 10, 2022 Share Posted September 10, 2022 I2C should provide more data, giving better gestures and overall trackpad responsiveness. To make sure it's working over I2C, you could disable VoodooPS2Mouse+Trackpad to make sure it isn't interfering. If this works, then I'd try disabling patch 10, 11, and the SSDT to see if it works without. I'm fairly certain you don't need the ACPI edits. 1 Link to comment Share on other sites More sharing options...
oldman20 Posted September 11, 2022 Author Share Posted September 11, 2022 12 hours ago, 1Revenger1 said: I2C should provide more data, giving better gestures and overall trackpad responsiveness. To make sure it's working over I2C, you could disable VoodooPS2Mouse+Trackpad to make sure it isn't interfering. If this works, then I'd try disabling patch 10, 11, and the SSDT to see if it works without. I'm fairly certain you don't need the ACPI edits. But in guide voodooRMI required VoodooPS2Mouse+Trackpad, isnt it? That why i not sure whick Trackpad work Link to comment Share on other sites More sharing options...
1Revenger1 Posted September 11, 2022 Share Posted September 11, 2022 They are required for SMBus mode, as VoodooPS2Synaptics provides some hardware info to VoodooRMI and resets the trackpad. I2C mode does not use the PS2 drivers this way and so the PS2 drivers can be disabled. Sometimes the PS2 controller is multiplexed and has both the trackpoint and trackpad plugged into different aux ports. VoodooPS2mouse would then be needed for the trackpoint, though I don't believe this is the case here. 1 Link to comment Share on other sites More sharing options...
oldman20 Posted September 11, 2022 Author Share Posted September 11, 2022 1 hour ago, 1Revenger1 said: They are required for SMBus mode, as VoodooPS2Synaptics provides some hardware info to VoodooRMI and resets the trackpad. I2C mode does not use the PS2 drivers this way and so the PS2 drivers can be disabled. Sometimes the PS2 controller is multiplexed and has both the trackpoint and trackpad plugged into different aux ports. VoodooPS2mouse would then be needed for the trackpoint, though I don't believe this is the case here. then the guide voodooRMI doesn't seem very clear, right? Can you give me a needed kexts and order for voodooRMI? Thank Link to comment Share on other sites More sharing options...
oldman20 Posted September 11, 2022 Author Share Posted September 11, 2022 (edited) 22 hours ago, 1Revenger1 said: I2C should provide more data, giving better gestures and overall trackpad responsiveness. To make sure it's working over I2C, you could disable VoodooPS2Mouse+Trackpad to make sure it isn't interfering. If this works, then I'd try disabling patch 10, 11, and the SSDT to see if it works without. I'm fairly certain you don't need the ACPI edits. 9 hours ago, 1Revenger1 said: They are required for SMBus mode, as VoodooPS2Synaptics provides some hardware info to VoodooRMI and resets the trackpad. I2C mode does not use the PS2 drivers this way and so the PS2 drivers can be disabled. Sometimes the PS2 controller is multiplexed and has both the trackpoint and trackpad plugged into different aux ports. VoodooPS2mouse would then be needed for the trackpoint, though I don't believe this is the case here. Is I2C working now? I checked seem it work full function, except right click menu in trackpad (right click work with 2 finger tap instead), is it normally? HackBook Pro-last.ioreg.zip Edited September 11, 2022 by oldman20 add more pics Link to comment Share on other sites More sharing options...
oldman20 Posted September 12, 2022 Author Share Posted September 12, 2022 Would you fast look at this? sir @1Revenger1 Link to comment Share on other sites More sharing options...
1Revenger1 Posted September 12, 2022 Share Posted September 12, 2022 Looks good. Right clicking in macOS usually requires tapping or clicking with two fingers. 1 Link to comment Share on other sites More sharing options...
oldman20 Posted September 13, 2022 Author Share Posted September 13, 2022 Thank you, so it is solved? Link to comment Share on other sites More sharing options...
Recommended Posts