[CentOS] Lenovo Ideapad 320 touchpad not recognized

Sat Aug 4 22:37:40 UTC 2018
Frank Cox <theatre at sasktel.net>

I'm setting up a new Lenovo Ideapad 320 and everything shows up and works fine except for the touchpad.

I did have to get into the bios and set Legacy for boot device and boot mode to get Centos 7  to finish installing.  The default bios settings would load the Centos 7 Gnome Live image from a usb flash drive and work (except for the touchpad) but when I tried to install to the hard drive it would get to the end of the process and kernel panic when it was writing the bootloader.  Setting Legacy Boot in the bios solved that problem.

I have run yum update so everything is up to date.

But the touchpad doesn't show up at all.

[frankcox at localhost ~]$ cat list.txt 
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   - Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   - Logitech USB Receiver                   	id=8	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    - Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    - Video Bus                               	id=6	[slave  keyboard (3)]
    - Power Button                            	id=7	[slave  keyboard (3)]
    - EasyCamera                              	id=9	[slave  keyboard (3)]
    - AT Translated Set 2 keyboard            	id=10	[slave  keyboard (3)]
    - Ideapad extra buttons                   	id=11	[slave  keyboard (3)]

The Logitech USB Receiver listed here is the wireless mouse that I'm using on it right now since the touchpad doesn't work.

I've been reading everything I can find about this problem, tried a few different grub parameters that didn't help, and the most advanced solution that I've tried was this:


1.   Add i8042.nopnp to grub command line in /etc/default/grub:
    # change this:
    GRUB_CMDLINE_LINUX_DEFAULT="... quiet splash"
    # to:
    GRUB_CMDLINE_LINUX_DEFAULT="... quiet splash i8042.nopnp"

2.   Update your grub config (as root):

    # If you're using UEFI boot
    grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

    # or legacy
    grub2-mkconfig -o /boot/grub2/grub.cfg

3.    Blacklist module i2c_hid (as root):

    echo "blacklist i2c_hid" > /etc/modprobe.d/i2c-hid.conf

4.    Regenerate your initramfs (as root):

    cp -v /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
    dracut -f

5.    Reboot!

Unfortunately, that didn't change anything; xinput --list still doesn't show the touchpad.

I have found references to some deb packages and fedora rpms that don't appear to exist for Centos 7:


I've pretty much run out of ideas.  I checked the bios and don't see anything that appears to be related to the touchpad (not that I was really expecting to).

MELVILLE THEATRE ~ Real D 3D Digital Cinema ~ www.melvilletheatre.com