Contribute
Register

VoodooI2C Help and Support

Status
Not open for further replies.
I tried exactly that first, but the SSDT failed to compile because SBFB and SBFG are not found in the same SSDT. I guess I need to declare them as "External" variables, like the 2 external devices declared at the top of the file.

Yes.

But I am unsure of the syntax to be used. And I am not sure where the syntax / language reference documentation is.

Read ACPI specification.
 
Thanks, RehabMan and Ben.

I have pruned my list of patches and SSDTs. I removed all the ones which RehabMan mentioned. I also removed OsxAptioFixDrv-64.efi and EmuVariableUefi-64.efi. I installed AptioMemoryFix.efi instead, as RehabMan recommended. Do you still see any "clutter"?

I also declared the built-in SBFB and SBFG methods in the SSDTs (I think I have done it right, by declaring them as external method objects). The SSDT compiled successfully and the system has booted without errors.

The touchscreen is still not working, though. Looking at the kernel log, the errors I previously reported ("slave address not acknowledged (7bit mode)") are not present anymore. In fact, I don't see anything which looks like an error. So, I am not sure why the touchscreen is not working.

Any help would be appreciated. Thank you.
 

Attachments

  • debug_32242.zip
    2.2 MB · Views: 143
  • SSDT-Touchscreen.dsl.txt
    633 bytes · Views: 123
Do you still see any "clutter"?

SSDT-XCPM.aml is not needed; if loaded, conflicts with config.plist/ACPI/SSDT/Generate/PluginType=true. Note also it is disabled by config.plist/ACPI/DisabledAML. Remove SSDT-XCPM.aml.

SSDT-DGPU.aml should be customized so it calls _OFF only at the path that applies to your computer (_SB.PCI0.RP01.PXSX).

ECDV->EC patch can be removed as your EC is named EC0 and the ECDV->EC patch is disabled anyway.

I also declared the built-in SBFB and SBFG methods in the SSDTs (I think I have done it right, by declaring them as external method objects). The SSDT compiled successfully and the system has booted without errors.

It probably doesn't matter, but SBFB and SBFG are not MethodObj. They use the ResourceTemplate, which means they are BuffObj.

Your "_SB.PCI0.I2C1.TPL1._CRS to _SB.PCI0.I2C1.TPL1.XCRS" patch actually renames the _CRS in TPD1 too.
Is that the intention?

You might consider using the TgtBridge option in to limit the scope of rename patches.
 
SSDT-XCPM.aml is not needed; if loaded, conflicts with config.plist/ACPI/SSDT/Generate/PluginType=true. Note also it is disabled by config.plist/ACPI/DisabledAML. Remove SSDT-XCPM.aml.

SSDT-DGPU.aml should be customized so it calls _OFF only at the path that applies to your computer (_SB.PCI0.RP01.PXSX).

ECDV->EC patch can be removed as your EC is named EC0 and the ECDV->EC patch is disabled anyway.

Oh, I didn't know that the work done by the XCPM method is done by a Clover setting itself. And I did not notice that the AML was disabled in the config.plist. I have removed the XCPM SSDT.

SSDT-DDGPU: As suggested by you, I have commented out the two unnecessary lines, which are part of the sample file you provide in the repo.

ECDV->EC patch: Removed.

I also removed another disabled patch: "change OSID to XSID (to avoid match against _OSI XOSI patch)"


It probably doesn't matter, but SBFB and SBFG are not MethodObj. They use the ResourceTemplate, which means they are BuffObj.

Your "_SB.PCI0.I2C1.TPL1._CRS to _SB.PCI0.I2C1.TPL1.XCRS" patch actually renames the _CRS in TPD1 too.
Is that the intention?

You might consider using the TgtBridge option in to limit the scope of rename patches.

Thank you for the BuffObj tip. That was what I was trying to find in the ACPI specifications. Changed.

"_SB.PCI0.I2C1.TPL1._CRS to _SB.PCI0.I2C1.TPL1.XCRS" patch: I saw that it was renaming to XCRS in TPD0 too. But since I do not actually have a TPD0 (or TPD1) device on my computer, I thought it would not do any harm. The touchpad on this computer is a PS/2 device. No idea why the DSDT has a TPD0 mentioned.

I didn't know about the introduction of the "TgtBridge" setting. It would have saved me so much time if I had known that before! I have now implemented it to limit it only to the TPL1 device. Thanks a lot!

The touch screen is still not working, though. Attached the problem reporting files.


EDIT: Okay, after some trial and error, I just figured out that the touchscreen DOES work after wake from sleep. I tried and repeated it multiple times just now. From a fresh boot, it does not work at all. Every time. Then, I log in, put the computer to sleep, then wake it up. The touch screen works!

How do I make it work after a fresh boot?
 

Attachments

  • debug_24965.zip
    2.2 MB · Views: 112
Last edited:
EDIT: Okay, after some trial and error, I just figured out that the touchscreen DOES work after wake from sleep. I tried and repeated it multiple times just now. From a fresh boot, it does not work at all. Every time. Then, I log in, put the computer to sleep, then wake it up. The touch screen works!

How do I make it work after a fresh boot?
I've looked at your files but I can't figure out what the issue is. You'll probably have to find me in the support chat room because this requires live debugging.
 
I'm using the dreaded ELAN1200 and simply can't get my touchpad to work, although others here on this forum with the exact same model laptop (Asus UX430UA) seem to have no problems, including multitouch.

I've installed the correct kexts, patched the DSDT, done the GPIO pinning and even deleted the existing Apple touchpad kexts from /V/S/E (AppleHPM.kext / AppleIntelLpssI2C.kext / AppleIntelLpssI2CController.kext)... but nothing seems to work :banghead: The touchpad stays dead as a dodo and completely undetected by OS X (10.13.4) :shifty: I feel like a complete moron... what am I doing wrong? Thanks guys

Debugging files:
 

Attachments

  • debug_9667.zip
    5.6 MB · Views: 136
  • debug_9667.zip
    5.6 MB · Views: 125
Hello @Kastenbrust. Use attached SSDT-VoodooI2C.aml and this to DSDT patches.
 

Attachments

  • SSDT-VoodooI2C.aml
    194 bytes · Views: 194
  • patches.txt
    585 bytes · Views: 171
Hi @anonymous-writer, I did exactly as you said but still not working, I even cleaned all my DSDT and SSDT's and tried again from scratch, and still absolutely nothing!! I feel like I'm going crazy :banghead: There must be something super simple I'm missing because everyone else has it working perfectly.

Here's an updated debug with your changes installed... :​
 

Attachments

  • debug_25661.zip
    5.9 MB · Views: 135
@Kastenbrust
You use VoodooI2CELAN.kext insted of VoodooI2CHID.kext. Delete that VoodooI2CELAN.kext.

If it works can you share picture from Intel Power Gadget?
I have a problem with the new driver with high CPU frequency.
 
Hi again @anonymous-writer, I did exactly as you suggested, changed the kexts and used the patch... still not working!!! :banghead:

Here's an updated debugging dump for you:

I've attached the Intel Power Gadget screenshot anyway for posterities sake:

Other people with the exact same model laptop have this working so easily, it's super frustrating. I must be missing something obvious. :eek:
 

Attachments

  • debug_18092.zip
    6.1 MB · Views: 107
  • Screen Shot 2018-05-11 at 05.42.35.png
    Screen Shot 2018-05-11 at 05.42.35.png
    93.9 KB · Views: 110
Status
Not open for further replies.
Back
Top