thinkbook 14-iil elan touchpad does not work

Bug #1874374 reported by Brian Chen
50
This bug affects 8 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Here is the output of
cat /proc/bus/input/devices

I: Bus=0019 Vendor=0000 Product=0005 Version=0000
N: Name="Lid Switch"
P: Phys=PNP0C0D/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input0
U: Uniq=
H: Handlers=event0
B: PROP=0
B: EV=21
B: SW=1

I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button"
P: Phys=PNP0C0C/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1
U: Uniq=
H: Handlers=kbd event1
B: PROP=0
B: EV=3
B: KEY=10000000000000 0

I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button"
P: Phys=LNXPWRBN/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXPWRBN:00/input/input2
U: Uniq=
H: Handlers=kbd event2
B: PROP=0
B: EV=3
B: KEY=10000000000000 0

I: Bus=0011 Vendor=0001 Product=0001 Version=ab83
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input3
U: Uniq=
H: Handlers=sysrq kbd event3 leds
B: PROP=0
B: EV=120013
B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7

I: Bus=0003 Vendor=062a Product=4c01 Version=0110
N: Name="MOSART Semi. 2.4G Keyboard Mouse"
P: Phys=usb-0000:00:14.0-4/input0
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0/0003:062A:4C01.0001/input/input4
U: Uniq=
H: Handlers=sysrq kbd event4 leds
B: PROP=0
B: EV=120013
B: KEY=1000000000007 ff9f207ac14057ff febeffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7

I: Bus=0019 Vendor=0000 Product=0006 Version=0000
N: Name="Video Bus"
P: Phys=LNXVIDEO/video/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input5
U: Uniq=
H: Handlers=kbd event5
B: PROP=0
B: EV=3
B: KEY=3e000b00000000 0 0 0

I: Bus=0003 Vendor=062a Product=4c01 Version=0110
N: Name="MOSART Semi. 2.4G Keyboard Mouse"
P: Phys=usb-0000:00:14.0-4/input1
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1/0003:062A:4C01.0002/input/input6
U: Uniq=
H: Handlers=mouse0 event6
B: PROP=0
B: EV=17
B: KEY=1f0000 0 0 0 0
B: REL=1943
B: MSC=10

I: Bus=0003 Vendor=062a Product=4c01 Version=0110
N: Name="MOSART Semi. 2.4G Keyboard Mouse Consumer Control"
P: Phys=usb-0000:00:14.0-4/input1
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1/0003:062A:4C01.0002/input/input7
U: Uniq=
H: Handlers=kbd event7
B: PROP=0
B: EV=1f
B: KEY=3f000301ff 0 0 483ffff17aff32d bfd4444600000000 1 130ff38b17c000 677bfad9415fed 19ed68000004400 10000002
B: REL=1040
B: ABS=100000000
B: MSC=10

I: Bus=0003 Vendor=062a Product=4c01 Version=0110
N: Name="MOSART Semi. 2.4G Keyboard Mouse System Control"
P: Phys=usb-0000:00:14.0-4/input1
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1/0003:062A:4C01.0002/input/input8
U: Uniq=
H: Handlers=kbd event8
B: PROP=0
B: EV=13
B: KEY=c000 10000000000000 0
B: MSC=10

I: Bus=0003 Vendor=062a Product=4c01 Version=0110
N: Name="MOSART Semi. 2.4G Keyboard Mouse"
P: Phys=usb-0000:00:14.0-4/input1
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1/0003:062A:4C01.0002/input/input9
U: Uniq=
H: Handlers=event9
B: PROP=0
B: EV=9
B: ABS=10000000000

I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="Ideapad extra buttons"
P: Phys=ideapad/input0
S: Sysfs=/devices/pci0000:00/0000:00:1f.0/PNP0C09:00/VPC2004:00/input/input10
U: Uniq=
H: Handlers=rfkill kbd event10
B: PROP=0
B: EV=13
B: KEY=81000800100c03 4400000000300000 0 2
B: MSC=10

I: Bus=0003 Vendor=04f2 Product=b6d9 Version=2699
N: Name="Integrated Camera: Integrated C"
P: Phys=usb-0000:00:14.0-6/button
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb3/3-6/3-6:1.0/input/input11
U: Uniq=
H: Handlers=kbd event11
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH Mic"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input12
U: Uniq=
H: Handlers=event12
B: PROP=0
B: EV=21
B: SW=10

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH Headphone"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input13
U: Uniq=
H: Handlers=event13
B: PROP=0
B: EV=21
B: SW=4

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=3"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input14
U: Uniq=
H: Handlers=event14
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=7"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input15
U: Uniq=
H: Handlers=event15
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=8"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input16
U: Uniq=
H: Handlers=event16
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=9"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input17
U: Uniq=
H: Handlers=event17
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=10"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input18
U: Uniq=
H: Handlers=event18
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=11"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input19
U: Uniq=
H: Handlers=event19
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=12"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input20
U: Uniq=
H: Handlers=event20
B: PROP=0
B: EV=21
B: SW=140

Output of xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ MOSART Semi. 2.4G Keyboard Mouse id=10 [slave pointer (2)]
⎜ ↳ MOSART Semi. 2.4G Keyboard Mouse Consumer Control id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
    ↳ Power Button id=6 [slave keyboard (3)]
    ↳ Video Bus id=7 [slave keyboard (3)]
    ↳ Power Button id=8 [slave keyboard (3)]
    ↳ MOSART Semi. 2.4G Keyboard Mouse id=9 [slave keyboard (3)]
    ↳ MOSART Semi. 2.4G Keyboard Mouse System Control id=12 [slave keyboard (3)]
    ↳ Integrated Camera: Integrated C id=13 [slave keyboard (3)]
    ↳ Ideapad extra buttons id=14 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=15 [slave keyboard (3)]
    ↳ MOSART Semi. 2.4G Keyboard Mouse Consumer Control id=16 [slave keyboard (3)]
ihasdapie@ihasdapiexthink:~$

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: linux-image-5.3.0-46-generic 5.3.0-46.38~18.04.1
ProcVersionSignature: Ubuntu 5.3.0-46.38~18.04.1-generic 5.3.18
Uname: Linux 5.3.0-46-generic x86_64
ApportVersion: 2.20.9-0ubuntu7.14
Architecture: amd64
CurrentDesktop: KDE
Date: Wed Apr 22 21:11:40 2020
InstallationDate: Installed on 2020-04-23 (0 days ago)
InstallationMedia: Kubuntu 18.04.4 LTS "Bionic Beaver" - Release amd64 (20200203.1)
SourcePackage: linux-signed-hwe
UpgradeStatus: No upgrade log present (probably fresh install)
---
ProblemType: Bug
ApportVersion: 2.20.11-0ubuntu27
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: ihasdapie 1662 F.... pulseaudio
CasperMD5CheckResult: skip
CurrentDesktop: KDE
DistroRelease: Ubuntu 20.04
InstallationDate: Installed on 2020-04-24 (2 days ago)
InstallationMedia: Kubuntu 20.04 LTS "Focal Fossa" - Release amd64 (20200423)
MachineType: LENOVO 20SL
Package: linux (not installed)
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-5.4.0-26-generic root=UUID=f9ba3fdc-a03b-4a55-a59b-0e41e5563bb9 ro quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 5.4.0-26.30-generic 5.4.30
RelatedPackageVersions:
 linux-restricted-modules-5.4.0-26-generic N/A
 linux-backports-modules-5.4.0-26-generic N/A
 linux-firmware 1.187
Tags: focal
Uname: Linux 5.4.0-26-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
_MarkForUpload: True
dmi.bios.date: 03/03/2020
dmi.bios.vendor: LENOVO
dmi.bios.version: DJCN15WW
dmi.board.name: LVAC/LVAD
dmi.board.vendor: LENOVO
dmi.board.version: SDK0J40697 WIN
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Lenovo ThinkBook 14-IIL
dmi.modalias: dmi:bvnLENOVO:bvrDJCN15WW:bd03/03/2020:svnLENOVO:pn20SL:pvrLenovoThinkBook14-IIL:rvnLENOVO:rnLVAC/LVAD:rvrSDK0J40697WIN:cvnLENOVO:ct10:cvrLenovoThinkBook14-IIL:
dmi.product.family: Thinkbook 14-IIL
dmi.product.name: 20SL
dmi.product.sku: LENOVO_MT_20SL_BU_idea_FM_Thinkbook 14-IIL
dmi.product.version: Lenovo ThinkBook 14-IIL
dmi.sys.vendor: LENOVO

Revision history for this message
Brian Chen (ihasdapie) wrote :
Revision history for this message
Brian Chen (ihasdapie) wrote :

The touchpad/touchpad driver in question is ELAN0634. A possible fix would be to add {"ELAN0634", 0} to /include/linux/input/elan-i2c-ids.h (refer to https://github.com/ihasdapie/linux/commit/a7ac88d20464b502027c0b313469a277f15da304)

Attempting to apply patches found in Bug#1853277, 1861610:
-> Changing dsdt.dsl does not work: no "Name (_HID, 'XXXX0000')" Found
https://github.com/realnickel/lenovo_thinkbook_iml15_touchpad_acpi_fix/commit/de0ca637f7d8de2164c787801b4af9d4ff586d67

Here is part of dsdt.dsl that may be relevant

      Device (TPD2)
        {
            Name (_ADR, Zero) // _ADR: Address
            Name (IDAD, Zero)
            Name (HID2, Zero)
            Name (_HID, "_HIDELAN0634") // _HID: Hardware ID
            Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
            Name (_UID, One) // _UID: Unique ID
            Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
            {

What is "HIDELAN0634?"

I have also tried changing grub options e.g. i8042.nomux..which do not work.

Revision history for this message
Brian Chen (ihasdapie) wrote :

Update:

I updated to 20.04 and the error persists.

Revision history for this message
Brian Chen (ihasdapie) wrote :

Output of acpidump | grep -C3 ELAN

   2A0B0: 0A 20 49 44 41 44 A4 84 53 42 46 53 53 42 46 49 . IDAD..SBFSSBFI
   2A0C0: 00 5B 82 42 0E 54 50 44 32 08 5F 41 44 52 00 08 .[.B.TPD2._ADR..
   2A0D0: 49 44 41 44 00 08 48 49 44 32 00 08 5F 48 49 44 IDAD..HID2.._HID
   2A0E0: 0D 45 4C 41 4E 30 36 33 34 00 08 5F 43 49 44 0D .ELAN0634.._CID.
   2A0F0: 50 4E 50 30 43 35 30 00 08 5F 55 49 44 01 14 4B PNP0C50.._UID..K
   2A100: 04 5F 44 53 4D 04 A0 3C 93 68 11 13 0A 10 F7 F6 ._DSM..<.h......
   2A110: DF 3C 67 42 55 45 AD 05 B3 0A 3D 89 38 DE A0 15 .<gBUE....=.8...

You-Sheng Yang (vicamo)
no longer affects: linux-signed-hwe (Ubuntu)
tags: added: hwe-touchpad
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1874374

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Brian Chen (ihasdapie) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected focal
description: updated
Revision history for this message
Brian Chen (ihasdapie) wrote : CRDA.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : IwConfig.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : Lspci.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : Lspci-vt.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : Lsusb.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : Lsusb-t.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : Lsusb-v.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : ProcEnviron.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : ProcModules.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : PulseList.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : RfKill.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : UdevDb.txt

apport information

Revision history for this message
Brian Chen (ihasdapie) wrote : WifiSyslog.txt

apport information

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
You-Sheng Yang (vicamo) wrote :

@Brian, basically "_HIDELAN0634" is an illegal name according to ACPI specification, so there won't be a overriding fix in kernel because kernel would enforce the names to follow standard. It follows this platform would have to be patch in the ACPI tables as detailed in https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1853277/comments/15.

Revision history for this message
Brian Chen (ihasdapie) wrote :

@vimcamo there isn't a :Name (_HID, "XXXX0000")" inside of the ACPI table for the thinkbook-14iil. Should I be adding an entry or editing something else?

Revision history for this message
You-Sheng Yang (vicamo) wrote :

Patch:

  Name (_HID, "_HIDELAN0634")

as:

  Name (_HID, "ELAN0634")

Revision history for this message
Brian Chen (ihasdapie) wrote :

I have applied the patch as specified. Touchpad still does not work. However, I now see ELAN0634 inside /sys/bus/acpi/devices.

/proc/bus/input/devices is still the same, and so is acpidump

Revision history for this message
You-Sheng Yang (vicamo) wrote :

You need 1. patch ACPI to have a legal HID, and 2. a kernel that recognizes this new ID. The second part is tracking at bug 1861610, and you can find a test kernel in https://launchpad.net/~vicamo/+archive/ubuntu/ppa-1861610 .

Revision history for this message
Brian Chen (ihasdapie) wrote :

Yup, that's been done too :/
Still doesn't work.

Revision history for this message
You-Sheng Yang (vicamo) wrote :

Please attach dmesg log since booted with that two applied.

Revision history for this message
Brian Chen (ihasdapie) wrote :
Revision history for this message
Dmitry Chekanov (prcpn) wrote :

I have a similar issue with my Thinkbook 14 IIL.

There's no "_HIDELAN0634" record in the ACPI though, just "ELAN0634".

Applying the patch manually didn't help, but I probably did something wrong in the process (downloaded kernel source, added the missing ID to the driver file, compiled it, applied with insmod = no effect).

I can provide some additional info, if it would be useful, and try the ppa:vicamo/ppa-1861610. if someone could explain how to work with it (adding the PPA and running sudo apt-get update didn't install anything new). The laptop runs Kubuntu 20.04, 5.4.0-28. The touchpad worked fine under Windows after installing Lenovo's serial IO driver.

Revision history for this message
Mark Janes (portlandlinuxengineer) wrote :

I have built the kernel with the patches that are supposed to enable the touchpad, but the problem persists:

   https://lore.kernel.org/linux-input/000201d5a8bd$9fead3f0$dfc07bd0$@emc.com.tw/

I have attached the disassembled dsdt.dsl from the system's acpi tables, which has an entry for:

  Name (_HID, "ELAN0634") // _HID: Hardware ID

there is some other problem beyond the i2c id's that needs to be addressed.

Revision history for this message
Mark Janes (portlandlinuxengineer) wrote :

Just to follow up here... This bug is not a duplicate of #1853277. It is a duplicate of #1861610, which recently had a resolution. See comment 66 there, but be aware that the sed line had a bug that was fixed in comment 96

Revision history for this message
Gumer GOMES (dragon05thikbook14iil) wrote :

This worked for me:

Kernel resolve problem: https://people.canonical.com/~khfeng/lp1853277-hack-5/

Article: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1861610

Solved Model: Lenovo ThinkBook 14-IIL

SO: Ubuntu 20.4.1

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.