Bug 2302776 - Touchpad shown as a battery
Summary: Touchpad shown as a battery
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 40
Hardware: x86_64
OS: Linux
unspecified
low
Target Milestone: ---
Assignee: Kernel Maintainer List
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2024-08-05 06:14 UTC by Villemur Clément
Modified: 2024-08-06 13:06 UTC (History)
14 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2024-08-06 13:06:43 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
kernel logs (177.69 KB, text/plain)
2024-08-05 06:14 UTC, Villemur Clément
no flags Details
HID: Ignore battery for all ELAN I2C-HID devices (5.68 KB, patch)
2024-08-05 10:24 UTC, Hans de Goede
no flags Details | Diff

Description Villemur Clément 2024-08-05 06:14:32 UTC
Created attachment 2043489 [details]
kernel logs

1. Please describe the problem:
On my HP Probook x360 G5 EE, the Elan touchpad (ELAN1001:00 04F3:2A00) is shown as having a battery, when it does not. 

https://discussion.fedoraproject.org/t/touchpad-shows-as-a-battery-kinoite/127326

2. What is the Version-Release number of the kernel:
6.9.12-200.fc40.x86_64 (64-bit)

3. Did it work previously in Fedora? If so, what kernel version did the issue
   *first* appear?  Old kernels are available for download at
   https://koji.fedoraproject.org/koji/packageinfo?packageID=8 :
No

4. Can you reproduce this issue? If so, please provide the steps to reproduce
   the issue below:
When you install Fedora Kinoite, there's 2 batteries shown instead of one. The second one is the touchpad and is always at 0%. 

5. Does this problem occur with the latest Rawhide kernel? To install the
   Rawhide kernel, run ``sudo dnf install fedora-repos-rawhide`` followed by
   ``sudo dnf update --enablerepo=rawhide kernel``:
I'm not sure how to do this on Fedora Kinoite. 

6. Are you running any modules that not shipped with directly Fedora's kernel?:
None that I know of. 

7. Please attach the kernel logs. You can get the complete kernel log
   for a boot with ``journalctl --no-hostname -k > dmesg.txt``. If the
   issue occurred on a previous boot, use the journalctl ``-b`` flag.

Comment 1 Villemur Clément 2024-08-05 06:24:29 UTC
I've unfortunately made this bug private but I don't know how to make it public again.

Comment 2 Hans de Goede 2024-08-05 10:10:10 UTC
(In reply to Villemur Clément from comment #1)
> I've unfortunately made this bug private but I don't know how to make it
> public again.

Ok I've opened this up now.

Note that the 04F3:2A00 device is actually the touchscreen, not the touchpad:

août 05 08:07:39 kernel: input: ELAN1001:00 04F3:2A00 Touchscreen as /devices/pci0000:00/0000:00:17.0/i2c_designware.0/i2c-0/i2c-ELAN1001:00/0018:04F3:2A00.0002/input/input16

This is a well known issue with Elan touchscreens and the kernel already has a long list of quirks to disable the broken battery reporting on these.

I have prepared a patch to just ignore the HID battery reporting on all Elan I2C-HID devices instead of adding yet another quirk. Here is a test build of the latest F40 kernel with that patch added:

https://koji.fedoraproject.org/koji/taskinfo?taskID=121520758

Note this is still building atm, it should be finished in a couple of hours. Please give this a try and let me know it resolves the issue.

Here are some generic instructions for installing a kernel directly from koji (Fedora's buildsystem):
https://fedorapeople.org/~jwrdegoede/kernel-test-instructions.txt

Comment 3 Hans de Goede 2024-08-05 10:24:58 UTC
Created attachment 2043513 [details]
HID: Ignore battery for all ELAN I2C-HID devices

This is the patch added to the test kernel.

Comment 4 Villemur Clément 2024-08-05 17:51:14 UTC
How can I install this kernel ? 

"sudo rpm -ivh --oldpackage kernel*.rpm" don't work on Fedora Kinoite due to the immutable system. 

I tried to use this command "rpm-ostree override replace *" (https://docs.fedoraproject.org/en-US/fedora-kinoite/getting-started/#package-layering) but it don't work because of those errors : 

error: Could not depsolve transaction; 2 problems detected:
 Problem 1: package kernel-6.9.12-200.fc40.x86_64 from @System requires kernel-core-uname-r = 6.9.12-200.fc40.x86_64, but none of the providers can be installed
  - cannot install both kernel-core-6.9.12-200.bz2302776.fc40.x86_64 from @commandline and kernel-core-6.9.12-200.fc40.x86_64 from @System
  - cannot install both kernel-core-6.9.12-200.bz2302776.fc40.x86_64 from @commandline and kernel-core-6.9.12-200.fc40.x86_64 from updates
  - conflicting requests
 Problem 2: package kernel-modules-extra-6.9.12-200.fc40.x86_64 from @System requires kernel-modules-uname-r = 6.9.12-200.fc40.x86_64, but none of the providers can be installed
  - cannot install both kernel-modules-6.9.12-200.bz2302776.fc40.x86_64 from @commandline and kernel-modules-6.9.12-200.fc40.x86_64 from @System
  - cannot install both kernel-modules-6.9.12-200.bz2302776.fc40.x86_64 from @commandline and kernel-modules-6.9.12-200.fc40.x86_64 from updates
  - conflicting requests

Comment 5 Villemur Clément 2024-08-05 18:10:01 UTC
The documentation (https://coreos.github.io/rpm-ostree/administrator-handbook/#override-rpm-files) says that I need to do "rpm-ostree install --force-replacefiles <pkg>" to override the kernel. But it seems that --force-replacefiles isn't working because I get the exact same output with and without --force-replacefile : 

error: Could not depsolve transaction; 3 problems detected:
 Problem 1: cannot install both kernel-modules-6.9.12-200.bz2302776.fc40.x86_64 from @commandline and kernel-modules-6.9.12-200.fc40.x86_64 from @System
  - conflicting requests
 Problem 2: cannot install both kernel-core-6.9.12-200.bz2302776.fc40.x86_64 from @commandline and kernel-core-6.9.12-200.fc40.x86_64 from @System
  - conflicting requests
 Problem 3: cannot install both kernel-modules-core-6.9.12-200.bz2302776.fc40.x86_64 from @commandline and kernel-modules-core-6.9.12-200.fc40.x86_64 from @System
  - conflicting requests

Comment 6 Hans de Goede 2024-08-06 13:06:43 UTC
Villemur, thank you for trying.

I'm pretty confident my patch will fix this and it has been accepted upstream now. So given the troubles with trying to install the test kernel I believe it is ok to just skip testing that.

Since my approach of just ignoring any batteries on all Elan I2C-HID driver the fix has been queued for the 6.12 kernel cycle, so unfortunately it will be a while before this show up in Fedora. In the mean time you can just ignore the extra battery, it should disappear in about 20 weeks from now.


Note You need to log in before you can comment on or make changes to this bug.