Although compiling the kernel took an hour, all I had to do was add this to drivers/input/mouse/elan_i2c_core.c { "ELAN061D", 0 }, This went along with a list of other ACPI IDs, so the number may vary with different models. I hope this gets fixed upstream so others won’t have to wait a long time compiling a kernel to get it to work.
The above links can fix you Lenovo 300 series (amd) touchpad (i2c) linux problems, however if you noticed error messages such as
cp: cannot stat '../i2c-amd-mp2': No such file or directory Error! Could not find module source directory. Directory: /usr/src/i2c-amd-mp2-1.0.0 does not exist. Error! Could not find module source directory. Directory: /usr/src/i2c-amd-mp2-1.0.0 does not exist. Error! Could not find module source directory. Directory: /usr/src/i2c-amd-mp2-1.0.0 does not exist.
or
"File: /usr/src/i2c-amd-mp2-1.0.0/dkms.conf does not exist." ....
as of march 2019 the install script copy portion of the script is buggy. simply manually copy the contents of the zip directory. open a terminal and cd to the directory where the files are uncompressed, then copy all:
cp * /usr/src/i2c-amd-mp2-1.0.0/
now run the install script as a superuser. With the bit of manual help, the script should complete and end you lenovo headache:
./dkms-install.sh About to run dkms install steps... Creating symlink /var/lib/dkms/i2c-amd-mp2/1.0.0/source -> /usr/src/i2c-amd-mp2-1.0.0 DKMS: add completed. Kernel preparation unnecessary for this kernel. Skipping... Building module: cleaning build area... make -j4 KERNELRELEASE=5.0.4 -C /lib/modules/5.0.4/build M=/var/lib/dkms/i2c-amd-mp2/1.0.0/build.... cleaning build area... DKMS: build completed. i2c-amd-mp2: Running module version sanity check. - Original module - No original module exists within this kernel - Installation - Installing to /lib/modules/5.0.4/kernel/drivers/i2c/busses/ depmod....... Backing up initrd.img-5.0.4 to /boot/initrd.img-5.0.4.old-dkms Making new initrd.img-5.0.4 (If next boot fails, revert to initrd.img-5.0.4.old-dkms image) update-initramfs......... DKMS: install completed. Finished running dkms install steps.