You are not logged in.
I posted this on reddit first, but I'm posting it here hoping that it reach more people who might have the same problem but don't use reddit.
First of all: this might seem as a duplicate as there are several posts (1 , 2 , 3 , 4 ) and even an Arch Wiki article that mentions this issue. So how is this not a duplicate? I found a workaround to solve this problem and now my touchpad works always, but out of curiosity, I want to find what was the cause of the problem, and hopefully, a solution that is not a workaround.
The problem: When I boot, my touchpad fail sometimes. 9 out of 10 times that I boot the touchpad works fine but the 1 time that it doesn't I have to reboot.
I've used many Ubuntu flavors before and Fedora but this problem only happens in Arch and Manjaro. That's the main reason I'm so curious about this. I feel like I'm just one configuration away from solving the issue.
The workaround: When my touchpad fails, running the following commands make it work:
modprobe -r i2c_hid
modprobe i2c_hidso I created a systemd file that runs those commands for me, which looks like this:
[Unit]
Description=I hope hope hope this works
Conflicts=getty@tty1.service
After=systemd-user-sessions.service getty@tty1.service systemd-logind.service
[Service]
ExecStart=/usr/bin/bash -c '\
/usr/bin/modprobe -r i2c_hid; \
/usr/bin/modprobe i2c_hid'
[Install]
WantedBy=multi-user.targetAs you might infer, it doesn't automatically detects the problem, because I don't know how to do that.
This systemd service run the commands regardless of if the touchpad failed or not.
I'm using libinput
My touchpad is Elantech (see this article)
I'm using LTS kernel
Let me know if I should add something else in here.
From the logs I checked, I found this, which led me to the workaround
Jan 01 15:22:25 jo kernel: AMD-Vi: [Firmware Bug]: : IOAPIC[4] not in IVRS table
Jan 01 15:22:25 jo kernel: AMD-Vi: [Firmware Bug]: : IOAPIC[5] not in IVRS table
Jan 01 15:22:25 jo kernel: AMD-Vi: [Firmware Bug]: : No southbridge IOAPIC found
Jan 01 15:22:25 jo kernel: AMD-Vi: Disabling interrupt remapping
Jan 01 15:22:25 jo kernel: pci 0000:00:00.2: AMD-Vi: Unable to read/write to IOMMU perf counter.
Jan 01 15:22:25 jo kernel: i2c_hid i2c-ELAN0501:00: HID over i2c has not been provided an Int IRQ
Jan 01 15:22:25 jo kernel: tpm_crb MSFT0101:00: can't request region for resource [mem 0x8f771000-0x8f774fff]
Jan 01 15:22:25 jo kernel: snd_pci_acp3x 0000:02:00.5: Invalid ACP audio mode : 2When the touchpad fails, it doesn't show up in neither libinput list-devices nor in xinput list
Have you tried synaptics?: Yes, but no luck. The problem shows up with both libinput and synaptics
Have you tried what the Arch Wiki suggested?: Yes, but no luck. I never reboot and always wait at least 2 minutes after shutdown to start the pc again, but regardless of wether I just shutdown from Windows or Arch, the issue still shows up. I also tried the i8042.kbdreset=1 kernel parameter, but didn't solve the problem.
Have you consider that the touchpad has gone defective?: I don't think it has, as it always work on my Windows partition.
There's people with no food and you're complaining about a touchpad that already works: Yes, I know I'm not going to die out of this, but I'm really curious about what a proper solution could be. I've been using Arch for ~ a month and I'm loving it. I've managed to solve every issue but this one and yes, the workaround is just fine, but I'm determined in finding the source of this matter.
Offline
I have the exact same problem here but when i try to remove the module, it gives
modprobe: FATAL: Module i2c_hid is in use.any solutions?
Offline
nvm i got it, need to remove i2c_hid_acpi first.
Offline