'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL'

Bug #1861610 reported by Prashant Warrier
164
This bug affects 27 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Undecided
You-Sheng Yang
Bionic
Undecided
Unassigned
Eoan
Undecided
Unassigned
Focal
Undecided
You-Sheng Yang
linux-oem-5.6 (Ubuntu)
Undecided
Unassigned
Bionic
Undecided
Unassigned
Eoan
Undecided
Unassigned
Focal
Undecided
Unassigned
linux-oem-osp1 (Ubuntu)
Undecided
Unassigned
Bionic
Undecided
Unassigned
Eoan
Undecided
Unassigned
Focal
Undecided
Unassigned

Bug Description

[SRU Justification]

[Impact]
Touchpad function unavailable on some platforms with new ELAN touchpad
HIDs.

[Fix]
https://lore.kernel.org/linux-input/000201d5a8bd$9fead3f0$dfc07bd0$@emc.com.tw/
required to match these currently unsupported IDs.

[Test Case]
1. check if platform is affected, e.g. with ELAN0634:

   $ sudo acpidump | grep -C3 ELAN
   2A060: 49 4E 54 31 70 0A 20 49 44 41 44 A4 84 53 42 46 INT1p.IDAD..SBF
   2A070: 53 53 42 46 49 00 5B 82 42 0E 54 50 44 32 08 5F SSBFI.[.B.TPD2._
   2A080: 41 44 52 00 08 49 44 41 44 00 08 48 49 44 32 00 ADR..IDAD..HID2.
   2A090: 08 5F 48 49 44 0D 45 4C 41 4E 30 36 33 34 00 08 ._HID.ELAN0634..
   2A0A0: 5F 43 49 44 0D 50 4E 50 30 43 35 30 00 08 5F 55 _CID.PNP0C50.._U
   2A0B0: 49 44 01 14 4B 04 5F 44 53 4D 04 A0 3C 93 68 11 ID..K._DSM..<.h.
   2A0C0: 13 0A 10 F7 F6 DF 3C 67 42 55 45 AD 05 B3 0A 3D ......<gBUE....=

2. check if touchpad then appear in /proc/bus/input/devices when
applied.

[Regression Potential]
Low. Only add new IDs for currently unsupported platforms.

========== Original Bug Description ==========

The Elan touchpad on my Lenovo Thinkbook isn't being detected, and hence isn't working.

`sudo acpidump | grep -C3 ELAN` gives me the device's ACPI id:

```bash
ghosthawkzero@EchelonV:~$ sudo acpidump | grep -C3 ELAN
   2A060: 49 4E 54 31 70 0A 20 49 44 41 44 A4 84 53 42 46 INT1p. IDAD..SBF
   2A070: 53 53 42 46 49 00 5B 82 42 0E 54 50 44 32 08 5F SSBFI.[.B.TPD2._
   2A080: 41 44 52 00 08 49 44 41 44 00 08 48 49 44 32 00 ADR..IDAD..HID2.
   2A090: 08 5F 48 49 44 0D 45 4C 41 4E 30 36 33 34 00 08 ._HID.ELAN0634..
   2A0A0: 5F 43 49 44 0D 50 4E 50 30 43 35 30 00 08 5F 55 _CID.PNP0C50.._U
   2A0B0: 49 44 01 14 4B 04 5F 44 53 4D 04 A0 3C 93 68 11 ID..K._DSM..<.h.
   2A0C0: 13 0A 10 F7 F6 DF 3C 67 42 55 45 AD 05 B3 0A 3D ......<gBUE....=
ghosthawkzero@EchelonV:~$
```

Have attached the content from /proc/bus/input/devices.

**EXPECTED** - touchpad to work

**WHAT IS HAPPENING** - touchpad not detected and touchpad not working.

More info:

LSB release:
```bash
ghosthawkzero@EchelonV:~$ lsb_release -rd
Description: Ubuntu 19.10
Release: 19.10
ghosthawkzero@EchelonV:~$
```

ProblemType: Bug
DistroRelease: Ubuntu 19.10
Package: linux-image-5.3.0-29-generic 5.3.0-29.31
ProcVersionSignature: Ubuntu 5.3.0-29.31-generic 5.3.13
Uname: Linux 5.3.0-29-generic x86_64
ApportVersion: 2.20.11-0ubuntu8.2
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: ghosthawkzero 1493 F.... pulseaudio
CurrentDesktop: ubuntu:GNOME
Date: Sun Feb 2 19:03:29 2020
InstallationDate: Installed on 2020-01-29 (3 days ago)
InstallationMedia: Ubuntu 19.10 "Eoan Ermine" - Release amd64 (20191017)
MachineType: LENOVO 20SM
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-5.3.0-29-generic root=UUID=c070ef84-6265-4593-a4c3-b0ceddf7e9b4 ro quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-5.3.0-29-generic N/A
 linux-backports-modules-5.3.0-29-generic N/A
 linux-firmware 1.183.3
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 12/11/2019
dmi.bios.vendor: LENOVO
dmi.bios.version: DJCN14WW
dmi.board.name: LVAC/LVAD
dmi.board.vendor: LENOVO
dmi.board.version: SDK0L77769 WIN
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Lenovo ThinkBook 15-IIL
dmi.modalias: dmi:bvnLENOVO:bvrDJCN14WW:bd12/11/2019:svnLENOVO:pn20SM:pvrLenovoThinkBook15-IIL:rvnLENOVO:rnLVAC/LVAD:rvrSDK0L77769WIN:cvnLENOVO:ct10:cvrLenovoThinkBook15-IIL:
dmi.product.family: Thinkbook 15-IIL
dmi.product.name: 20SM
dmi.product.sku: LENOVO_MT_20SM_BU_idea_FM_Thinkbook 15-IIL
dmi.product.version: Lenovo ThinkBook 15-IIL
dmi.sys.vendor: LENOVO

Revision history for this message
Prashant Warrier (ghosthawkzero) wrote :
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
You-Sheng Yang (vicamo) wrote : Re: 'Elan touchpad' not detected in 'Ubuntu 19.04' on 'Lenovo ThinkBook 15 IIL'

This seems to be duplicate of https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1853277 to me.

Please attach the output of `ls -al /sys/bus/i2c/devices/*/` (with the tailing '/') and `ls /sys/bus/acpi/devices`.

Revision history for this message
Prashant Warrier (ghosthawkzero) wrote :

The output of your first command is attached with this comment (sys-bus-i2c-devices.txt)

The output of your second command is:

```bash
ghosthawkone@EchelonV:~$ ls /sys/bus/acpi/devices
ACPI0003:00 device:0e device:20 device:32 device:44 device:56 device:68 device:7a device:8c INT3403:01 LNXCPU:09 LNXSYBUS:00 PNP0C0A:00
ACPI000C:00 device:0f device:21 device:33 device:45 device:57 device:69 device:7b device:8d INT3403:02 LNXCPU:0a LNXSYBUS:01 PNP0C0C:00
ACPI000E:00 device:10 device:22 device:34 device:46 device:58 device:6a device:7c device:8e INT3403:03 LNXCPU:0b LNXSYSTM:00 PNP0C0D:00
CRQ0340:00 device:11 device:23 device:35 device:47 device:59 device:6b device:7d device:8f INT340E:00 LNXCPU:0c LNXVIDEO:00 PNP0C0E:00
device:00 device:12 device:24 device:36 device:48 device:5a device:6c device:7e device:90 INT3455:00 LNXCPU:0d MSFT0001:00 PNP0C14:00
device:01 device:13 device:25 device:37 device:49 device:5b device:6d device:7f device:91 INT3519:00 LNXCPU:0e MSFT0003:00 PNP0C14:01
device:02 device:14 device:26 device:38 device:4a device:5c device:6e device:80 device:92 INT3F0D:00 LNXCPU:0f PNP0000:00 PNP0C14:02
device:03 device:15 device:27 device:39 device:4b device:5d device:6f device:81 device:93 INTC5000:00 LNXPOWER:00 PNP0100:00 PNP0C14:03
device:04 device:16 device:28 device:3a device:4c device:5e device:70 device:82 device:94 LIC0001:00 LNXPOWER:01 PNP0103:00 PNP0C14:04
device:05 device:17 device:29 device:3b device:4d device:5f device:71 device:83 device:95 LNXCPU:00 LNXPOWER:02 PNP0A08:00 PNP0C14:05
device:06 device:18 device:2a device:3c device:4e device:60 device:72 device:84 device:96 LNXCPU:01 LNXPOWER:03 PNP0B00:00 PRP00001:00
device:07 device:19 device:2b device:3d device:4f device:61 device:73 device:85 device:97 LNXCPU:02 LNXPOWER:04 PNP0C02:00 SYNA2B60:00
device:08 device:1a device:2c device:3e device:50 device:62 device:74 device:86 ELAN0634:00 LNXCPU:03 LNXPOWER:05 PNP0C02:01 USBC000:00
device:09 device:1b device:2d device:3f device:51 device:63 device:75 device:87 INT0E0C:00 LNXCPU:04 LNXPOWER:06 PNP0C02:02 VPC2004:00
device:0a device:1c device:2e device:40 device:52 device:64 device:76 device:88 INT3394:00 LNXCPU:05 LNXPOWER:07 PNP0C02:03 YMC2017:00
device:0b device:1d device:2f device:41 device:53 device:65 device:77 device:89 INT33A1:00 LNXCPU:06 LNXPOWER:08 PNP0C02:04
device:0c device:1e device:30 device:42 device:54 device:66 device:78 device:8a INT3400:00 LNXCPU:07 LNXPOWER:09 PNP0C04:00
device:0d device:1f device:31 device:43 device:55 device:67 device:79 device:8b INT3403:00 LNXCPU:08 LNXPWRBN:00 PNP0C09:00
ghosthawkone@EchelonV:~$ ls /sys/bus/acpi/devices > sys-bus-acpi-devices.txt
```

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

Hi, now we found you do have I2C host device i2c_designware enabled, but somehow there doesn't seem to have any slave device probed. Please reboot with kernel parameter "dyndbg='file drivers/i2c/* +pt' log_buf_len=32M" and paste your dmesg output.

Please also attach acpi dumps:

  $ sudo apt install acpica-tools
  $ sudo acpidump -o acpi-dump.bin

Revision history for this message
Prashant Warrier (ghosthawkzero) wrote :

I'm attaching a .tar.gz archive (debug-outs.tar.gz) with two files:
1. acpi-dump.bin
2. dmesg-out.txt

The first file contains the output from acpidump, and the second file contains the output from dmesg.

Revision history for this message
AaronMa (mapengyu) wrote :

This issue should be the duplicated as:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1853277

If you don't want to change ACPI, please wait for LENOVO's new BIOS.

Revision history for this message
Raúl Álvarez Tenor (ralvarezt) wrote :

Hi,

The proposed solution for the suggested duplicate (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1853277) is not applicable for IIL Lenovo ThinkBook submodels. I've tried the insructions there but the proposed patch cannot be applied since the string XXXX0000 is not found in the decompiled DSDT table.

Could you please indicate on how to proceed to modify the DSDT ACPI table for IIL models for the touchpad to work? Please let me know if you need further information on this.

Best regards,

Raúl.

Revision history for this message
Bas Mevissen (basmevissen) wrote :

The problem here is that the ID of the Elan touchpad is not in the white list of the driver. For a patch, see https://lore.kernel.org/linux-input/20191202010253.GO248138@dtor-ws/t/#m008d36e30f2711c0e3e33d396a444dd2ee98f8b1

So far, I could not find a tree carrying this change. So you need to patch some kernel source to make it work. With the patch applied, no need to modify the DSDT table nor do any other change.

You-Sheng Yang (vicamo)
summary: - 'Elan touchpad' not detected in 'Ubuntu 19.04' on 'Lenovo ThinkBook 15
- IIL'
+ 'Elan touchpad' not detected on 'Lenovo ThinkBook 15 IIL'
Revision history for this message
You-Sheng Yang (vicamo) wrote :

@basmevissen, @ralvarezt could you try https://launchpad.net/~vicamo/+archive/ubuntu/ppa-1861610 ? If that works for you, I'll send the merge proposal to Ubuntu kernels.

Changed in linux (Ubuntu Focal):
assignee: nobody → You-Sheng Yang (vicamo)
Revision history for this message
Brian Chen (ihasdapie) wrote :

I've encountered the same issue on a Thinkbook 14-iil running kububuntu 20.04. ELAN0634 is the culprit for me as well. I haven't quite figured out how to apply the kernel patch where one adds { "ELAN064", 0} to elan-ic2-ids.h to my system. I can confirm that the fixes for the thinkbook 15iil do not work for the thinkbook 14iil -- i tried.

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

@Brian, please file another bug for your thinbook 14iil and attach result of `sudo acpidump | grep -C3 ELAN` there as well.

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

@vicamo is there a way to manually apply the patch where you add more hardware ids to elan-i2c-ids.h? Your package does not work.

You-Sheng Yang (vicamo)
Changed in linux (Ubuntu Focal):
status: Confirmed → In Progress
Revision history for this message
You-Sheng Yang (vicamo) wrote :
description: updated
Timo Aaltonen (tjaalton)
Changed in linux-oem-5.6 (Ubuntu Focal):
status: New → Fix Committed
Changed in linux-oem-5.6 (Ubuntu Bionic):
status: New → Invalid
Changed in linux-oem-5.6 (Ubuntu Eoan):
status: New → Invalid
Timo Aaltonen (tjaalton)
Changed in linux-oem-osp1 (Ubuntu Bionic):
status: New → Fix Committed
Changed in linux-oem-osp1 (Ubuntu Focal):
status: New → Invalid
Changed in linux-oem-osp1 (Ubuntu):
status: New → Invalid
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in linux (Ubuntu Bionic):
status: New → Confirmed
Changed in linux (Ubuntu Eoan):
status: New → Confirmed
Changed in linux-oem-5.6 (Ubuntu):
status: New → Confirmed
Changed in linux-oem-osp1 (Ubuntu Eoan):
status: New → Confirmed
3 comments hidden view all 133 comments
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (10.6 KiB)

This bug was fixed in the package linux-oem-5.6 - 5.6.0-1010.10

---------------
linux-oem-5.6 (5.6.0-1010.10) focal; urgency=medium

  * focal/linux-oem-5.6: 5.6.0-1010.10 -proposed tracker (LP: #1876025)

  * built-using constraints preventing uploads (LP: #1875601)
    - temporarily drop Built-Using data

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * Focal update: v5.6.8 upstream stable release (LP: #1875938)
    - mm: check that mm is still valid in madvise()
    - tools/testing/nvdimm: Fix compilation failure without
      CONFIG_DEV_DAX_PMEM_COMPAT
    - watchdog: reset last_hw_keepalive time at start
    - scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login
    - xfs: correctly acount for reclaimable slabs
    - scsi: lpfc: Fix crash after handling a pci error
    - scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG
    - scsi: libfc: If PRLI rejected, move rport to PLOGI state
    - ceph: return ceph_mdsc_do_request() errors from __get_parent()
    - ceph: don't skip updating wanted caps when cap is stale
    - pwm: imx27: Fix clock handling in pwm_imx27_apply()
    - pwm: rcar: Fix late Runtime PM enablement
    - nvme-tcp: fix possible crash in write_zeroes processing
    - ASoC: qcom: q6asm-dai: Add SNDRV_PCM_INFO_BATCH flag
    - scsi: iscsi: Report unbind session event when the target has been removed
    - tools/test/nvdimm: Fix out of tree build
    - ASoC: Intel: atom: Take the drv->lock mutex before calling
      sst_send_slot_map()
    - nvme: fix deadlock caused by ANA update wrong locking
    - drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax
    - dma-direct: fix data truncation in dma_direct_get_required_mask()
    - kernel/gcov/fs.c: gcov_seq_next() should increase position index
    - selftests: kmod: fix handling test numbers above 9
    - ipc/util.c: sysvipc_find_ipc() should increase position index
    - kconfig: qconf: Fix a few alignment issues
    - lib/raid6/test: fix build on distros whose /bin/sh is not bash
    - block: fix busy device checking in blk_drop_partitions
    - s390/cio: generate delayed uevent for vfio-ccw subchannels
    - s390/cio: avoid duplicated 'ADD' uevents
    - loop: Better discard support for block devices
    - Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs
      enabled"
    - powerpc/pseries: Fix MCE handling on pseries
    - nvme: fix compat address handling in several ioctls
    - pwm: renesas-tpu: Fix late Runtime PM enablement
    - pwm: bcm2835: Dynamically allocate base
    - scsi: lpfc: Fix erroneous cpu limit of 128 on I/O statistics
    - scsi: lpfc: Fix lockdep error - register non-static key
    - perf/core: Disable page faults when getting phys address
    - drm/amd/display: Calculate scaling ratios on every medium/full update
    - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet
    - ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk
    - block: fix busy device checking in blk_drop_partitions again
    - cxgb4: fix adapter crash due to wrong MC size
    - cxgb4: fix large delays in PTP synchronization
    - ipv4: Update fib_select_default to ...

Changed in linux-oem-5.6 (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Mark Janes (portlandlinuxengineer) wrote :

With this kernel patch, the touchpad seems to be recognized, but it will not function:

My system has this directory:

  /sys/bus/acpi/devices/ELAN0634:00

status is 15, but touchpad is unresponsive.

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

After reading the related bug 1853277 for the Thinkbook IML variant, I see that the elan touchpad is not visible on the i2c bus:

$ cat /sys/bus/i2c/devices/*/name
Synopsys DesignWare I2C adapter
i915 gmbus tc6
DPDDC-A
DPDDC-B
DPMST
SMBus I801 adapter at efa0
i915 gmbus dpa
i915 gmbus dpb
i915 gmbus dpc
i915 gmbus tc1
i915 gmbus tc2
i915 gmbus tc3
i915 gmbus tc4
i915 gmbus tc5

ELAN0634 does NOT show up in the list.

Changed in linux (Ubuntu Bionic):
status: Confirmed → In Progress
Changed in linux (Ubuntu Eoan):
status: Confirmed → In Progress
Changed in linux (Ubuntu Bionic):
status: In Progress → Fix Committed
Changed in linux (Ubuntu Eoan):
status: In Progress → Fix Committed
Changed in linux (Ubuntu Focal):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux-oem-osp1 - 5.0.0-1052.57

---------------
linux-oem-osp1 (5.0.0-1052.57) bionic; urgency=medium

  * bionic/linux-oem-osp1: 5.0.0-1052.57 -proposed tracker (LP: #1876676)

  * Make Dell WD19 dock more reliable after suspend (LP: #1868217)
    - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3
    - xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0
    - xhci: Finetune host initiated USB3 rootport link suspend and resume

  * Packaging resync (LP: #1786013)
    - [Packaging] add libcap-dev dependency

 -- Timo Aaltonen <email address hidden> Mon, 04 May 2020 11:56:26 +0300

Changed in linux-oem-osp1 (Ubuntu Bionic):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (10.6 KiB)

This bug was fixed in the package linux-oem-5.6 - 5.6.0-1010.10

---------------
linux-oem-5.6 (5.6.0-1010.10) focal; urgency=medium

  * focal/linux-oem-5.6: 5.6.0-1010.10 -proposed tracker (LP: #1876025)

  * built-using constraints preventing uploads (LP: #1875601)
    - temporarily drop Built-Using data

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * Focal update: v5.6.8 upstream stable release (LP: #1875938)
    - mm: check that mm is still valid in madvise()
    - tools/testing/nvdimm: Fix compilation failure without
      CONFIG_DEV_DAX_PMEM_COMPAT
    - watchdog: reset last_hw_keepalive time at start
    - scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login
    - xfs: correctly acount for reclaimable slabs
    - scsi: lpfc: Fix crash after handling a pci error
    - scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG
    - scsi: libfc: If PRLI rejected, move rport to PLOGI state
    - ceph: return ceph_mdsc_do_request() errors from __get_parent()
    - ceph: don't skip updating wanted caps when cap is stale
    - pwm: imx27: Fix clock handling in pwm_imx27_apply()
    - pwm: rcar: Fix late Runtime PM enablement
    - nvme-tcp: fix possible crash in write_zeroes processing
    - ASoC: qcom: q6asm-dai: Add SNDRV_PCM_INFO_BATCH flag
    - scsi: iscsi: Report unbind session event when the target has been removed
    - tools/test/nvdimm: Fix out of tree build
    - ASoC: Intel: atom: Take the drv->lock mutex before calling
      sst_send_slot_map()
    - nvme: fix deadlock caused by ANA update wrong locking
    - drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax
    - dma-direct: fix data truncation in dma_direct_get_required_mask()
    - kernel/gcov/fs.c: gcov_seq_next() should increase position index
    - selftests: kmod: fix handling test numbers above 9
    - ipc/util.c: sysvipc_find_ipc() should increase position index
    - kconfig: qconf: Fix a few alignment issues
    - lib/raid6/test: fix build on distros whose /bin/sh is not bash
    - block: fix busy device checking in blk_drop_partitions
    - s390/cio: generate delayed uevent for vfio-ccw subchannels
    - s390/cio: avoid duplicated 'ADD' uevents
    - loop: Better discard support for block devices
    - Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs
      enabled"
    - powerpc/pseries: Fix MCE handling on pseries
    - nvme: fix compat address handling in several ioctls
    - pwm: renesas-tpu: Fix late Runtime PM enablement
    - pwm: bcm2835: Dynamically allocate base
    - scsi: lpfc: Fix erroneous cpu limit of 128 on I/O statistics
    - scsi: lpfc: Fix lockdep error - register non-static key
    - perf/core: Disable page faults when getting phys address
    - drm/amd/display: Calculate scaling ratios on every medium/full update
    - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet
    - ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk
    - block: fix busy device checking in blk_drop_partitions again
    - cxgb4: fix adapter crash due to wrong MC size
    - cxgb4: fix large delays in PTP synchronization
    - ipv4: Update fib_select_default to ...

Changed in linux-oem-5.6 (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-focal' to 'verification-done-focal'. If the problem still exists, change the tag 'verification-needed-focal' to 'verification-failed-focal'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-focal
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-bionic' to 'verification-done-bionic'. If the problem still exists, change the tag 'verification-needed-bionic' to 'verification-failed-bionic'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-bionic
Revision history for this message
Brian Chen (ihasdapie) wrote :

I've updated my kernel to linux-oem-5.6 and tried booting off of that. The bug persists, however. What steps can I take from here?

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

focal-proposed version 5.4.0-33.37 doesn't include this fix yet. Included in 5.4.0-34.38 instead.

bionic-proposed version 4.15.0-102.103 has.

tags: added: verification-failed-focal
removed: verification-needed-focal
tags: added: verification-done-bionic
removed: verification-needed-bionic
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-eoan' to 'verification-done-eoan'. If the problem still exists, change the tag 'verification-needed-eoan' to 'verification-failed-eoan'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-eoan
Revision history for this message
Massimo Chiriatti (massimochi) wrote :

Hi vicamo,
I've updated my kernel to 5.4.0-34.38 and tried booting off of that. The bug persists, however. What steps can I take from here?
Many thanks for your effort.

Revision history for this message
Massimo Chiriatti (massimochi) wrote :

Just to add some info. Hereafter you will find xinput with 5.4.0-34.38 loaded.

Elan touchpad is not detected at all.

Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ PixArt USB Optical Mouse id=9 [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)]
    ↳ Integrated Camera: Integrated C id=10 [slave keyboard (3)]
    ↳ Ideapad extra buttons id=11 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]

Please, can you give some hints?
Thanks

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

From comment #9, some users reported Lenovo ThinkBook 15 IIL takes additional IDs in the elan i2c ID list to be recognized. Apparently the are some more issues with these Lenovo ThinkBook models, maybe even the same model with different BIOS version, but the addition of these new IDs can still be the first step to make some of them working. While we don't have all the hardware to work on at the same time, progress will still be made.

Checked the proposed change is already included in eoan-proposed as version 5.3.0-56.50.

tags: added: verification-done-eoan
removed: verification-needed-eoan
tags: added: hwe-touchpad
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 5.4.0-37.41

---------------
linux (5.4.0-37.41) focal; urgency=medium

  * CVE-2020-0543
    - SAUCE: x86/speculation/spectre_v2: Exclude Zhaoxin CPUs from SPECTRE_V2
    - SAUCE: x86/cpu: Add a steppings field to struct x86_cpu_id
    - SAUCE: x86/cpu: Add 'table' argument to cpu_matches()
    - SAUCE: x86/speculation: Add Special Register Buffer Data Sampling (SRBDS)
      mitigation
    - SAUCE: x86/speculation: Add SRBDS vulnerability and mitigation documentation
    - SAUCE: x86/speculation: Add Ivy Bridge to affected list

 -- Marcelo Henrique Cerri <email address hidden> Wed, 03 Jun 2020 11:24:23 -0300

Changed in linux (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (22.0 KiB)

This bug was fixed in the package linux - 5.3.0-59.53

---------------
linux (5.3.0-59.53) eoan; urgency=medium

  * CVE-2020-0543
    - SAUCE: x86/speculation/spectre_v2: Exclude Zhaoxin CPUs from SPECTRE_V2
    - SAUCE: x86/cpu: Add a steppings field to struct x86_cpu_id
    - SAUCE: x86/cpu: Add 'table' argument to cpu_matches()
    - SAUCE: x86/speculation: Add Special Register Buffer Data Sampling (SRBDS)
      mitigation
    - SAUCE: x86/speculation: Add SRBDS vulnerability and mitigation documentation
    - SAUCE: x86/speculation: Add Ivy Bridge to affected list

linux (5.3.0-56.50) eoan; urgency=medium

  * eoan/linux: 5.3.0-56.50 -proposed tracker (LP: #1880111)

  * Build and ship a signed wireguard.ko (LP: #1861284)
    - [Packaging] wireguard -- add support for building signed .ko
    - [Config] wireguard -- enable on all architectures

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * debian/scripts/file-downloader does not handle positive failures correctly
    (LP: #1878897)
    - [Packaging] file-downloader not handling positive failures correctly

  * Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW),
    REV=0x354 [8086:a0f0] subsystem id [1a56:1651] wireless adapter not found
    due to firmware crash (LP: #1874685)
    - iwlwifi: pcie: handle QuZ configs with killer NICs as well

  * CVE-2020-12114
    - propagate_one(): mnt_set_mountpoint() needs mount_lock

  * Eoan update: upstream stable patchset 2020-05-11 (LP: #1878073)
    - ext4: fix extent_status fragmentation for plain files
    - bpftool: Fix printing incorrect pointer in btf_dump_ptr
    - [Config] updateconfigs for ARM64_ERRATUM_1542419
    - arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419
    - arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419
    - arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space
    - arm64: Silence clang warning on mismatched value/register sizes
    - watchdog: reset last_hw_keepalive time at start
    - scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login
    - scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG
    - ceph: return ceph_mdsc_do_request() errors from __get_parent()
    - ceph: don't skip updating wanted caps when cap is stale
    - pwm: rcar: Fix late Runtime PM enablement
    - scsi: iscsi: Report unbind session event when the target has been removed
    - ASoC: Intel: atom: Take the drv->lock mutex before calling
      sst_send_slot_map()
    - nvme: fix deadlock caused by ANA update wrong locking
    - kernel/gcov/fs.c: gcov_seq_next() should increase position index
    - selftests: kmod: fix handling test numbers above 9
    - ipc/util.c: sysvipc_find_ipc() should increase position index
    - kconfig: qconf: Fix a few alignment issues
    - s390/cio: avoid duplicated 'ADD' uevents
    - loop: Better discard support for block devices
    - Revert "powerpc/64: irq_work avoid interrupt when called with hardware irqs
      enabled"
    - pwm: renesas-tpu: Fix late Runtime PM enablement
    - pwm: bcm2835: Dynamically allocate base
    - perf/core: Disable page faults when get...

Changed in linux (Ubuntu Eoan):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (18.8 KiB)

This bug was fixed in the package linux - 4.15.0-106.107

---------------
linux (4.15.0-106.107) bionic; urgency=medium

  * CVE-2020-0543
    - SAUCE: x86/cpu: Add a steppings field to struct x86_cpu_id
    - SAUCE: x86/cpu: Add 'table' argument to cpu_matches()
    - SAUCE: x86/speculation: Add Special Register Buffer Data Sampling (SRBDS)
      mitigation
    - SAUCE: x86/speculation: Add SRBDS vulnerability and mitigation documentation
    - SAUCE: x86/speculation: Add Ivy Bridge to affected list

linux (4.15.0-103.104) bionic; urgency=medium

  * bionic/linux: 4.15.0-103.104 -proposed tracker (LP: #1881272)

  * "BUG: unable to handle kernel paging request" when testing
    ubuntu_kvm_smoke_test.kvm_smoke_test with B-KVM in proposed (LP: #1881072)
    - KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs
    - KVM: VMX: Mark RCX, RDX and RSI as clobbered in vmx_vcpu_run()'s asm blob

linux (4.15.0-102.103) bionic; urgency=medium

  * bionic/linux: 4.15.0-102.103 -proposed tracker (LP: #1878856)

  * Packaging resync (LP: #1786013)
    - update dkms package versions

  * debian/scripts/file-downloader does not handle positive failures correctly
    (LP: #1878897)
    - [Packaging] file-downloader not handling positive failures correctly

  * Kernel log flood "ceph: Failed to find inode for 1" (LP: #1875884)
    - ceph: don't check quota for snap inode
    - ceph: quota: cache inode pointer in ceph_snap_realm

  * [UBUNTU 18.04] zpcictl --reset - contribution for kernel (LP: #1870320)
    - s390/pci: Recover handle in clp_set_pci_fn()
    - s390/pci: Fix possible deadlock in recover_store()

  * Bionic update: upstream stable patchset 2020-05-12 (LP: #1878256)
    - drm/edid: Fix off-by-one in DispID DTD pixel clock
    - drm/qxl: qxl_release leak in qxl_draw_dirty_fb()
    - drm/qxl: qxl_release leak in qxl_hw_surface_alloc()
    - drm/qxl: qxl_release use after free
    - btrfs: fix block group leak when removing fails
    - btrfs: fix partial loss of prealloc extent past i_size after fsync
    - mmc: sdhci-xenon: fix annoying 1.8V regulator warning
    - mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers
    - ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter
    - ALSA: hda/hdmi: fix without unlocked before return
    - ALSA: pcm: oss: Place the plugin buffer overflow checks correctly
    - PM: ACPI: Output correct message on target power state
    - PM: hibernate: Freeze kernel threads in software_resume()
    - dm verity fec: fix hash block number in verity_fec_decode
    - RDMA/mlx5: Set GRH fields in query QP on RoCE
    - RDMA/mlx4: Initialize ib_spec on the stack
    - vfio: avoid possible overflow in vfio_iommu_type1_pin_pages
    - vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn()
    - iommu/qcom: Fix local_base status check
    - scsi: target/iblock: fix WRITE SAME zeroing
    - iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system
    - ALSA: opti9xx: shut up gcc-10 range warning
    - nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl
    - dmaengine: dmatest: Fix iteration non-stop logic
    - selinux: properly handle multiple messages in ...

Changed in linux (Ubuntu Bionic):
status: Fix Committed → Fix Released
AceLan Kao (acelankao)
Changed in linux-oem-osp1 (Ubuntu Eoan):
status: Confirmed → Invalid
Revision history for this message
Brian Chen (ihasdapie) wrote :

I've tested the fix on 5.4.0-38-generic and the bug persists.

Revision history for this message
Oliver Joos (oliver-joos) wrote :

I also tested kernel 5.4.0-38, 5.3.0-59 and 4.15.0-106 without success.

I confirm that the touchpad on our Lenovo ThinkBook 15 IIL does not work. And it is not listed by "xinput" either. I tried many suggestions with BIOS settings, kernel parameters and reloading modules.
Like Brian (comment #11) I think the driver for this Elantech touchpad has a whitelist where model "ELAN0634" is simply missing.

Revision history for this message
Oliver Joos (oliver-joos) wrote :

I just found that the kernels above do have an elan_i2c.ko with "ELAN0634" by issuing:

for KO in $(locate elan_i2c) ; do strings -f $KO | grep ELAN0634 ; done

Nevertheless this touchpad still does not work with Ubuntu :-(

Revision history for this message
AaronMa (mapengyu) wrote :
Revision history for this message
D. Šafar (dsafar) wrote :

Touchpad is not working nor is it listed in xinput with latest BIOS (DJCN17WW) on following kernels with or without kernel parameters suggested in comment #39:

5.6.0-1011-oem
5.4.0-37-generic

Changed in linux-oem-osp1 (Ubuntu Eoan):
status: Invalid → Fix Released
Changed in linux (Ubuntu):
status: Confirmed → Fix Released
53 comments hidden view all 133 comments
Revision history for this message
Almir Mulalic (t-h-oor) wrote :

EDIT
@Ferenc: Hello, im a bit new to linux, was using it mostly in collage so I know that i'm doing something wrong, but have no idea what. Im getting a boot error that acpi file cannot be found (cannot find /acpi_fixed.cpio) and then 'cannot open root device' afterwards.I checked and the files are indeed there, I redone the proces twice but still same outcome.Thank you so much for your help you saved us.

Revision history for this message
Dmitri (zvooq) wrote :

@Ferenc, thank you so much. It's working! Though without doubleclick but it's not important.

Lenovo ThinkBook 15 IIL
Ubuntu 20.04
Kernel: 5.4.0-42-generic
BIOS: DJCN18WW

Revision history for this message
Ferenc Szabo (ferenc-szabo) wrote :

@Almir: Use this:

#!/bin/sh
sed -i -E 's/^(\s*initrd\s+)(\S*\/)(.*)$/\1\2acpi_fixed.cpio \2\3/g' \
    /boot/grub/grub.cfg.new

Revision history for this message
Almir Mulalic (t-h-oor) wrote :

Yup, thats it you are a real MVP. I mean touch is quite bad and there are no gestures but its W O R K I N G. Can confirm that it works both on Ubuntu and Kali linux. If someone by chance find a good gesturea library please keep us updated im trying to figure out will libinput dk the job.

Revision history for this message
Gabor Opposits (ogabor) wrote :

Thank You, Ferenc, it is a great job. It works!
kernel: 5.7.10
bios: DJCN18WW
thinkbook 15-IIL
koszonom.

Revision history for this message
Yaroslav (yarik-work) wrote :

@Ferenc: Thank you!

Looks like these notebooks can have different models of touchpads (Elan, Synatics, Alps). I did the same for SYNA2B60 (ELAN0634 left as it was) and got a perfectly working touchapd (it has double finger scrolling for example). For ELAN0634 your approach didn't give any result.

kernel: 5.4.0-42
bios: DJCN18WW
thinkbook 14-IIL SL

Revision history for this message
Zak B (zbaalbak) wrote :

@Ferenc: even if it didn't work in my case, thank you for helping us out. I have a Lebovo thinkbook 15 IIL. I can see ELAN0634 in /sys/bus/acpi/devices but I have no /sys/bus/i2c/drivers/elan_i2c/ folder. The elan_i2c folder isn't there. also, like Filip I am getting no elan_i2c in the output of lsmod | grep i2c'.

Thanks !

Revision history for this message
Zak B (zbaalbak) wrote :

@Ferenc : You made my day. a true HERO !! It is now working on my Lenovo Thinkbook 15 IIL with Kernel 5.7-14.1 with Manjaro. Thanks a lot !!!! I have just applied a
$ modprobe elan_i2c
before rebooting which made the elan_i2c appear in my lsmod and my i2c drivers.
Thanks Again !
@Filip : maybe try this one out.

I hope this fix will be applied to the kernel soon. Any idea on how we can raise this issue ???

Revision history for this message
Zak B (zbaalbak) wrote :

Also, please note that there is no acpidump in Arch. So these commands should be used instead to decompile and recompile the acpi tables

-Extract the tables cat /sys/firmware/acpi/tables/DSDT > dsdt.dat`
-Decompile: `iasl -d dsdt.dat`
-Recompile: `iasl -tc dsdt.dsl`

Refer to https://wiki.archlinux.org/index.php/DSDT for more info.

Revision history for this message
Erik Kooistra (f-me-x) wrote :

I have tested both a 14-IIL and a 15-ILL, it seems indeed that updating the bios / AMT does not work, for now it does not seem any corrolation to what touchpad is in what model, so i would just commend the STA bit out for both the SYNA2B60, and the ELAN, check if hid_i2c works, if this is broken try backlisting it and use the elan_i2c driver.

It seems that for a proper fix we just need to wait for lenovo to ship a non broken bios or some quirk specifily for this model to try to detect both drivers.

Revision history for this message
Oliver Joos (oliver-joos) wrote :

@Ferenc, thank you!!
Your comments #66 and #86 finally made the touchpad WORKING!

We have a Lenovo ThinkBook 15-IML with Linux Mint 20 MATE (based on Ubuntu 20.04) and kernel 5.4.0-42.

Revision history for this message
Almir Mulalic (t-h-oor) wrote :

Hello guys another update from me. I saw that tjis thread is shared across multiple distro forums and because I tested 4 I would like to post it here for feuture reference.

Ubuntu - working but with grub parametres from comment #96, sadly no gestures are available (nor will be by libinput and touchpad-gestures library because they just can't reckognize them)

Mint - same as linux

Redhat - working but clicks are inverted for me lol (nothing on settings can chnage it but I guess that you can change it somehow tbh didnt want to bother with it)

Kali - same as ubuntu but the touchpad is VEEERY snesitive and everything will trigger touch, multiple times while i was writing something i was iterulted by a click and this cannot be changed. For some reason ubuntu is better. Also it cant support gestures only click and pointera. I got in contact with libinput creator and after some testibg we realised that it can onky capture point devices and click events, nothing multitouch. Also every gestures on xinputlist are displayed as n/a

Arch - My biggest surprise and I was so happy to boot it on arch because it works flawlessly. Not only that touchpad works (with hack) buz the gestures of scrolling got automatically reckognized, i tried as much as i can to trigger accidental clicks but couldnt do it, only thing is that it comes with touch to click disabled which was a quick fix.I think that it is compatible with libinput or other gestures because its reckongized as ELAN not just pointer device. This will be my main distro on this laptop.

Hope that this was helpfull i'll also link other newer lenovo devices that I test so that this problem does not limit to thinkbooks. Again this is just my experience for you it might be different.

Revision history for this message
Michael (mil-15-iil) wrote :

I need help!

The solution from comment #66 and #96 doesn't work for me.
I see elan0634 in acpidump, but elan_i2c or i2c_hid don't show up in lsmod.

cat /sys/bus/acpi/devices has ELAN0634:00, but modalias is empty.
No reaction on the touchpad.

Ubuntu 20.04.1, latest BIOS update (DJCN18WW).

Any suggestions?

Revision history for this message
Denis (fa11en-angel) wrote :

Hello everyone.
I'm trying to solve my thouchpad problem with solution from comment #66.
What should I do if after step
iasl -sa dsdt.dsl
if have output like this and don't have file dsdt.aml that mentioned in step
mv dsdt.aml kernel/firmware/acpi ?

Output:
"ASL Input: dsdt.dsl - 43833 lines, 1358120 bytes, 23158 keywords
ASM Source: dsdt.asm - 4765532 bytes
Compilation complete. 32 Errors, 583 Warnings, 55 Remarks, 199 Optimizations "

Ubuntu 18.04.1

Revision history for this message
Michael (mil-15-iil) wrote :

I have to correct my message #106.
After going back to "normal2 kernel and reding all steps from #66 and #96, it works fine.

Revision history for this message
Tzahi Serruya (stzahi) wrote :

Thank you @Ferenc~!

Just a tiny question, what is the reason I cant disable the touchpad with the Fn button that suppose to disable it?
What is the reason that all touchpad settings does not work in the settings menu?
(Running Kubuntu 20.04)

Thanks a lot!

Revision history for this message
Tzahi Serruya (stzahi) wrote :

About enabling and disabling , I've solved this by adding
/usr/local/bin
2 files:

disableMouse:
xinput --set-prop "ELAN0634:00 04F3:0400 Mouse" 180 0

enableMouse:
xinput --set-prop "ELAN0634:00 04F3:0400 Mouse" 180 1

Don't forget to make them executable...
# sudo chmod +x disableMouse enableMouse

Now you have a command line switch, temporarily, until this bug will be completely solved .

Good luck.

Revision history for this message
Almir Mulalic (t-h-oor) wrote :

You won't get any functionallity from ubuntu. Pointer events and 2 clicks that's it. Even though the touchpad get's recognized it get's recognized as some hybrid ELAN device, which means no software can detect it. I hope that there is something that you can do to "trick" the kernel because the Arch distribution works flawlessly so it CAN be recognized, but how, I really don't know.

Revision history for this message
Tzahi Serruya (stzahi) wrote :

Can you show me the output of the command "xinput" in your Arch distro?

Revision history for this message
Almir Mulalic (t-h-oor) wrote :

Yep,

[mula@ArchMashina ~]$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Elan Touchpad id=10 [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)]
    ↳ Integrated Camera: Integrated C id=9 [slave keyboard (3)]
    ↳ Ideapad extra buttons id=11 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]

But I think that you would be interested in this too :

----------------------
-- Grep Input Devices:
----------------------

I: Bus=0018 Vendor=04f3 Product=005b Version=0000
N: Name="Elan Touchpad"
P: Phys=
S: Sysfs=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-ELAN0634:00/input/input6
U: Uniq=
H: Handlers=event6 mouse0
B: PROP=5
B: EV=b
B: KEY=e520 10000 0 0 0 0
B: ABS=663800013000003

-------------------------
-- Libinput list-devices:
-------------------------

Device: Elan Touchpad
Kernel: /dev/input/event6
Group: 6
Seat: seat0, default
Size: 104x68mm
Capabilities: pointer gesture
Tap-to-click: disabled
Tap-and-drag: enabled
Tap drag lock: disabled
Left-handed: disabled
Nat.scrolling: disabled
Middle emulation: disabled
Calibration: n/a
Scroll methods: *two-finger edge
Click methods: *button-areas clickfinger
Disable-w-typing: enabled
Accel profiles: flat *adaptive
Rotation: n/a

(note that this settings are somehow wrong, I have enabled touch to click so my guess is that this is the default settings)

Revision history for this message
Dmitry Sekushin (sekushin) wrote :

Thanks @Ferenc~

Lenovo ThinkBook 14-IIL 20SL003SRU — touchpad flies.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Please test this kernel without patched DSDT:
https://people.canonical.com/~khfeng/lp1853277-hack/

Revision history for this message
Felix (felixw83-z) wrote :

Sorry to bother, but does "fix released" mean, after updating my ubuntu 20.04 the touchpad should work? Or do I still have to install a patched Kernel?

Revision history for this message
Hans de Goede (j-w-r-degoede) wrote :

@ferenc-szabo, thank you for figuring out the issue with the _STA method.

@kaihengfeng, it looks like we are both working on the same issue again :)

I've written a simple, clean kernel patch fixing this, and I just got confirmation from the reporter of:
https://bugzilla.redhat.com/show_bug.cgi?id=1842039

That this patch fixes this:

--- a/drivers/i2c/i2c-core-base.c
+++ b/drivers/i2c/i2c-core-base.c
@@ -1464,8 +1464,8 @@ static int i2c_register_adapter(struct i2c_adapter *adap)

  /* create pre-declared device nodes */
  of_i2c_register_devices(adap);
- i2c_acpi_register_devices(adap);
  i2c_acpi_install_space_handler(adap);
+ i2c_acpi_register_devices(adap);

  if (adap->nr < __i2c_first_dynamic_bus_num)
   i2c_scan_static_board_info(adap);

I'll Cc you on the upstream submission.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Ah! I _thought_ _REG was ran but _STA still report wrong status.

Turns out _REG wasn't ran before _STA. Thanks for your patch.

Revision history for this message
Tzahi Serruya (stzahi) wrote :

I don't know what happened , but suddenly my computer detects it flawlessly.
I can control the driver from the settings section and disable the touchpad from the Fn key

Revision history for this message
Tzahi Serruya (stzahi) wrote :

Maybe some Kernel update for ubuntu during the last days?

Revision history for this message
Daniel Yevelkin (sicktrickrick) wrote :

Hey Tzahi,
Can you please post your current kernel version and laptop model?
thanks!

Revision history for this message
Tzahi Serruya (stzahi) wrote :

5.4.0-47-generic

Lenovo ThinkBook 15 IIL

Revision history for this message
Tzahi Serruya (stzahi) wrote :

The only tip I can give, is that I tried @ferenc's fix while I was running 5.8.0 kernel.
It was working as expected with the regular problems.
Then I've had some issues with Virtualbox-dkms and needed to go back to 5.4.0-47 kernel version.
Suddenly Ubuntu detects the trackpad flawlessly.

Good luck.

Revision history for this message
Irwan Oyong (irwanoyong) wrote :

Hi! Thank you guys for the thread and hardwork.

I am using Ubuntu 20.04 on Lenovo Yoga Slim 7 (14IIL05). The touchpad was not detected initially, so I installed Kai's kernel https://people.canonical.com/~khfeng/lp1853277-final/ and now it worked, but the downside is, my NVIDIA graphic card is not working. The driver is still detected, but

?field.comment=Hi! Thank you guys for the thread and hardwork.

I am using Ubuntu 20.04 on Lenovo Yoga Slim 7 (14IIL05). The touchpad was not detected initially, so I installed Kai's kernel https://people.canonical.com/~khfeng/lp1853277-final/ and now it worked, but the downside is, my NVIDIA graphic card is not working. The driver is still detected, but when I open the GUI it looks like this, and the display I am working on my laptop is kinda glitched.

Anybody has the most recommended version of the kernel fix? Thank you.

Revision history for this message
Jakob S (js-on) wrote :

Hi,

I bought the Thinkbook 15IIL some days ago, although I read, that I would have trouble with the touchpad.
I adapted Ferenc's post #66 for Manjaro (Arch) and it's working like a charm.
You don't need to change that much. Just install all packages with pacman -S cpio iasl

And please use this command within the patch file, according to thread #96.
#!/bin/sh
sed -i -E 's/^(\s*initrd\s+)(\S*\/)(.*)$/\1\2acpi_fixed.cpio \2\3/g' \
    /boot/grub/grub.cfg.new

After a reboot, the Touchpad is working quite well.

Revision history for this message
Irwan Oyong (irwanoyong) wrote :
Download full text (13.6 KiB)

Hi Jakob, thanks for the response.

Tried it, got many error messages while trying to disassemble the original acpi table.

Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20190509
Copyright (c) 2000 - 2019 Intel Corporation

File appears to be binary: found 82451 non-ASCII characters, disassembling
Binary file appears to be a valid ACPI table, disassembling
Input file dsdt.dat, Length 0x3BB7C (244604) bytes
ACPI: DSDT 0x0000000000000000 03BB7C (v02 LENOVO CB-01 00000001 01000013)
Pass 1 parse of [DSDT]
ACPI Error: ^^GFX0.DD1F: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.VER1: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.VER2: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI0: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI1: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI2: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI3: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI4: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI5: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI6: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI7: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI8: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGI9: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGIA: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGIB: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ^^^UBTC.MGIC: Path has too many parent prefixes (^) (20190509/nsaccess-464)
ACPI Error: AE_NOT_FOUND, During name lookup/catalog (20190509/psobject-264)
ACPI Error: ...

Revision history for this message
Nikita Tomilov (nikita-tomilov) wrote :

Hello all,

Just wanted to let you know that the touchpad works on my 20SL0022 with the kernel https://people.canonical.com/~khfeng/lp1853277-final/ and unblacklisting i2c_hid (undoing changes made in https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1861610/comments/66).

My OS is Ubuntu 20.04.
A bit more info on this kernel can be found here https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1853277

Revision history for this message
Ismail Yushaw (iyushaw) wrote :

Hello nikita-tomilov... your solution worked and the trackpad is working, but the issue i realised was that there was no kernel header associated with the kernel and as as result VirtualBox cannot run VMs. I was asking if anyone can help me with the guide to generate a kernel header for the installed kernel.

root@14-IIL:~# uname -a
Linux 14-IIL 5.9.0-rc4+ #1 SMP Wed Sep 9 20:08:29 CST 2020 x86_64 x86_64 x86_64 GNU/Linux

Kind regards

Revision history for this message
Nikita Tomilov (nikita-tomilov) wrote :

Hi Ismail,

I would suggest you to ask the original author of this kernel Kai-Heng Feng (kaihengfeng) either in the bug report https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1853277 or here.

Revision history for this message
Geneste (entaliss) wrote :

Hi, today we have just installed ubuntu 20.04 TLS on Lenovo Thinkpad T15 IIL. Everything's work fine except the touchpad. He's not respondig .. so we have tried to search on google some fix or other but nothing concrete. Any clue ? or any idea ? Thanks for your help. Please keep me informed ASAP .

Best regards,

Revision history for this message
Almir Mulalic (t-h-oor) wrote :

@Genstate Everything you need to know/do is to locate comment #66 follow those steps and touchpad will work. If you have any other question just scroll down and you will probably see an answer. I tested it in most popular distros and it's working okay, you can find detailed description of behaviour on comment #105. You won't get much functionality from it on ubuntu but it will work.
Best regards

Revision history for this message
Geneste (entaliss) wrote :

Hi, it's me again try exactly what's mentionned in the Ticket #66 but when I try to compil the DS.file I have an error :
Compile the dsl file:
  # iasl -sa dsdt.dsl

dsdt.dsl PARSEOP_SCOPE on the line 38999 but never change something on this line ..

Juste follow procedure .. Some help ?

Best regards;

Revision history for this message
ANOMM (anomm) wrote :

Appending "i8042.nopnp=1 pci=nocrs" to boot parameters worked for the touchpad issue on the Lenovo V14-IIL.

Following are the steps I've followed:
1.) Open the file /etc/default/grub for editing, for example by running
      sudoedit /etc/default/grub
2.) Add to the line beginning GRUB_CMDLINE_LINUX_DEFAULT: "i8042.nopnp=1 pci=nocrs" so that it reads:
      GRUB_CMDLINE_LINUX_DEFAULT="i8042.nopnp=1 pci=nocrs"
     ** If other parameters are there between the double quotes, it may be OK to leave them.
3.) Save the file and exit
4.) Run this command to update the GRUB configuration:
      sudo update-grub
5.) Reboot

Other relevant threads for this:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1881322/comments/5
https://askubuntu.com/questions/1206190/elan-touchpad-not-working-on-lenovo-ideapad-with-ubuntu-16-04
https://forums.lenovo.com/t5/Ubuntu/ThinkBook-14-IML-ELAN-TouchPad-Not-Recognized-Ubuntu/m-p/4622518?page=2#5104555

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1861610/comments/66
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1861610/comments/96

Displaying first 40 and last 40 comments. View all 133 comments or add a comment.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

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