Syniurge / i2c-amd-mp2

DKMS-ready driver for AMD PCI-E MP2 I2C controllers
22 stars 4 forks source link

Not working in fedora #12

Closed rakshith-ravi closed 5 years ago

rakshith-ravi commented 5 years ago

Hey,

I downloaded the zip of this repo and ran sudo ./dkms-install.sh on a Fedora 30 workstation and my touchpad is still not being detected. It still shows up as a PS/2 Generic Mouse in xinput list. Tap, moving and two finger tap (secondary click) works but scroll doesn't work for some reason and there is no "touchpad" section in the "mouse and touchpad" section of the settings menu, just mouse. This is on a Dell Latitude 5495.

Any help would be greatly appreciated.

Syniurge commented 5 years ago

Do you have the dkms package installed? What was the output of dkms-install.sh?

rakshith-ravi commented 5 years ago

Initially, dkms wasn't installed. So I couldn't run the script. But after installing dkms, I reran the script and got this output:

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 -j8 KERNELRELEASE=5.1.11-300.fc30.x86_64 -C /lib/modules/5.1.11-300.fc30.x86_64/build M=/var/lib/dkms/i2c-amd-mp2/1.0.0/build...
cleaning build area...

DKMS: build completed.

i2c-amd-mp2.ko.xz:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.1.11-300.fc30.x86_64/extra/
Adding any weak-modules

depmod....

Backing up initramfs-5.1.11-300.fc30.x86_64.img to /boot/initramfs-5.1.11-300.fc30.x86_64.img.old-dkms
Making new initramfs-5.1.11-300.fc30.x86_64.img
(If next boot fails, revert to initramfs-5.1.11-300.fc30.x86_64.img.old-dkms image)
dracut.........

DKMS: install completed.
Finished running dkms install steps.

Edit: I must also mention that I ran the script using sudo ./dkms-install.sh

Syniurge commented 5 years ago

Did you reboot after running dkms-install.sh? After a fresh boot check if you have the module loaded with lsmod|grep mp2. Also with dmesg|grep mp2 you should see something like:

$ lsmod | grep mp2
i2c_amd_mp2       20480  0

$ dmesg | grep mp2
[    3.302647] i2c_amd_mp2_pci: loading out-of-tree module taints kernel.
[    3.302699] i2c_amd_mp2_pci: module verification failed: signature and/or required key missing - tainting kernel
[    3.303478] i2c_amd_mp2 0000:03:00.7: MP2 device registered.
[    3.304777] i2c_amd_mp2 AMDI0011:00: Linked as a consumer to 0000:03:00.7
[    3.367228] i2c_amd_mp2 AMDI0011:01: Linked as a consumer to 0000:03:00.7

If you don't see similar lines, try loading the module manually:

$ sudo modprobe i2c_amd_mp2

and check whether there's an error or not.

rakshith-ravi commented 5 years ago

Okay, so doing lsmod | grep mp2 gives nothing. dmesg | grep mp2 gives nothing either. However, doing sudo modprobe i2c_amd_mp2 gives an error:

modprobe: ERROR: could not insert 'i2c_amd_mp2': Operation not permitted

Naturally, I'm doing it with root permissions, so I'm not sure what it means by "operation not permitted"

Syniurge commented 5 years ago

OK try disabling Secure Boot in your BIOS, it's probably causing the issue.

rakshith-ravi commented 5 years ago

Okay, disabling secure boot seems to get the module working. However, the mouse scrolling is reversed (natural scrolling is disabled) and I'm still not able to see the touchpad in the "Mouse and Touchpad" section of the settings. That being said, the output of xinput list shows:

⎜   ↳ DELL0814:00 044E:121F Mouse               id=20   [slave  pointer  (2)]
⎜   ↳ DELL0814:00 044E:121F Touchpad            id=21   [slave  pointer  (2)]

So that's some progress I guess. But I'm still not sure how to get it to show on the settings menu to customize it though

Syniurge commented 5 years ago

Hmm I probably have a different touchpad model and I'm using KDE, where it's properly detected (and there's a setting to reverse scrolling) so I cannot really help on this. My xinput list output:

↳ MSFT0001:00 06CB:7F27 Touchpad            id=13   [slave  pointer  (2)]

Since your touchpad seems to be properly detected by the X server and libinput I think this is more of a GNOME-related question.

rakshith-ravi commented 5 years ago

Fair enough. Thanks for helping me getting it work