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?