Bug 1871793

Summary: Not work touchpad on Lenovo IdeaPad 5 14IIL05
Product: [Fedora] Fedora Reporter: Mike <mixask8>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 36CC: acaringi, airlied, arslan, bhelgaas, bjorn, bskeggs, btissoir, hdegoede, ichavero, itamar, jarodwilson, jeremy, jglisse, john.j5live, jonathan, josef, kernel-maint, lgoncalv, linville, masami256, mchehab, mjg59, peter.hutterer, robi25052002, steved, tak_hmb
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-05-25 17:00:20 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
dmesg.txt
none
iomem.txt
none
acpidump.txt
none
firmware_node
none
acpi_devices_status
none
i2c_devices
none
i2c_devices after grubby
none
dmesg after grubby
none
DMI
none
experimental patch to remove EfiMemoryMappedIO none

Description Mike 2020-08-24 10:23:26 UTC
Description of problem:
Hello. I have trouble with working touchpad on Lenovo IdeaPad 5 14IIL05.
First i install OS without UEFI - touchpad didn’t work
After i reinstall OS via UEFI - once touchpad work in live session
After complete install OS, touchpad work only on 5.6.6 (stock) kernel. Next i update BIOS and touchpad stopped working on any kernel. Downgrade BIOS on previous version not solved problem.

In Windows 10 this device detected:
VEN_MSF&DEL0004&Col01
UID_093A&PID_2510&REV_0100

As i inderstand this I2C HID device.
libi2c i installed.

dmesg | grep i2c:
[ 1.434574] platform i2c_designware.0: failed to claim resource 0: [mem 0x00000000-0x000001ff]

Also when my laptop wake up after waiting mod. May be show logo disabled/enabled touchpad. But i not have Fn-key for this action.

Tried downgrade libinput to 1.15.4, but doesnt sense

Version-Release number of selected component (if applicable):
libinput version 1.16.1

Comment 1 Mike 2020-09-22 16:02:43 UTC
xinput --list

⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Video Bus                               	id=6	[slave  keyboard (3)]
    ↳ Power Button                            	id=7	[slave  keyboard (3)]
    ↳ Integrated Camera: Integrated C         	id=9	[slave  keyboard (3)]
    ↳ Ideapad extra buttons                   	id=10	[slave  keyboard (3)]
    ↳ Intel HID events                        	id=11	[slave  keyboard (3)]
    ↳ Intel HID 5 button array                	id=12	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=13	[slave  keyboard (3)]


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/PNP0A08:00/device:1c/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=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input2
U: Uniq=
H: Handlers=sysrq kbd leds event2 
B: PROP=0
B: EV=120013
B: KEY=402000000 3803078f800d001 feffffdfffefffff 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/input13
U: Uniq=
H: Handlers=kbd event4 
B: PROP=0
B: EV=3
B: KEY=3e000b00000000 0 0 0

I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="Intel HID events"
P: Phys=
S: Sysfs=/devices/platform/INT33D5:00/input/input14
U: Uniq=
H: Handlers=kbd event5 rfkill 
B: PROP=0
B: EV=13
B: KEY=81000300000000 5000004000 1e294000000020 0
B: MSC=10

I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="Intel HID 5 button array"
P: Phys=
S: Sysfs=/devices/platform/INT33D5:00/input/input15
U: Uniq=
H: Handlers=kbd event6 
B: PROP=0
B: EV=13
B: KEY=2000000000000 0 0 0 0 1000000000000 0 201c000000000000 0
B: MSC=10

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/input16
U: Uniq=
H: Handlers=kbd event7 rfkill 
B: PROP=0
B: EV=13
B: KEY=81000800100c03 4400000000300000 0 2
B: MSC=10

I: Bus=0010 Vendor=001f Product=0001 Version=0100
N: Name="PC Speaker"
P: Phys=isa0061/input0
S: Sysfs=/devices/platform/pcspkr/input/input17
U: Uniq=
H: Handlers=kbd event8 
B: PROP=0
B: EV=40001
B: SND=6

I: Bus=0003 Vendor=174f Product=244c Version=0013
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/input18
U: Uniq=
H: Handlers=kbd event9 
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="sof-hda-dsp Mic"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input19
U: Uniq=
H: Handlers=event10 
B: PROP=0
B: EV=21
B: SW=10

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="sof-hda-dsp Headphone"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input20
U: Uniq=
H: Handlers=event11 
B: PROP=0
B: EV=21
B: SW=4

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="sof-hda-dsp HDMI/DP,pcm=3"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input21
U: Uniq=
H: Handlers=event12 
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="sof-hda-dsp HDMI/DP,pcm=4"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input22
U: Uniq=
H: Handlers=event13 
B: PROP=0
B: EV=21
B: SW=140

I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="sof-hda-dsp HDMI/DP,pcm=5"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0/input23
U: Uniq=
H: Handlers=event14 
B: PROP=0
B: EV=21
B: SW=140

Where is it touchpad? Maybe "Ideapad extra buttons"?

Comment 2 Hans de Goede 2020-09-23 09:22:23 UTC
So this might very well have the same root cause as bug 1842039.

I build a test kernel with a patch for this a while ago:
https://koji.fedoraproject.org/koji/taskinfo?taskID=51023530

It would be great if you can give this a try. Note koji throws away test-builds after a while to clean up disk-space and as mentioned I did this one a while ago, so please download the kernel quickly before it gets cleaned up.

For generic instructions for installing a kernel directly from koji, see:
https://fedorapeople.org/~jwrdegoede/kernel-test-instructions.txt

Note as mentioned there, you need to turn off secure boot since this is not an official Fedora kernel build.

Comment 3 Hans de Goede 2020-10-07 18:45:27 UTC
The patch which I believe fixes this has been added to the upstream 5.8.13 kernel.

A Fedora kernel based on the 5.8.13 release is available in the regular Fedora-updates repository now, to upgrade run:

sudo dnf update 'kernel*'

After upgrading, please boot into the new kernel, test the touchpad and report here if it works or not.

Comment 4 Mike 2020-10-22 12:16:07 UTC
Hello. I updated to last kernel (5.8.15-201.fc32.x86_64), but problem was not solution.
I see same discussion on lenovo forums (https://forums.lenovo.com/t5/Other-Linux-Discussions/Touchpad-not-working-on-ideapad-5-14iil05/m-p/5019457?page=2).
Some users suggested change property:
'GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"' -> 'GRUB_CMDLINE_LINUX_DEFAULT="pci=nocrs quiet splash"
But i dont know how try this in Fedora and helpful it.

The same users talks around i2c_hid, elan_i2c drivers and MSFT kernel patch (if I understand correctly)

Comment 5 Mike 2020-11-18 09:19:12 UTC
Do you have any information when kernel 5.9 will be released?
5.9 will build for Fedora 32?
I tryed Fedora 33 in live - touchpad not work. I still stay on Fedora 32

Anybody can change group the issue for all around?

Comment 6 Hans de Goede 2020-11-18 11:46:25 UTC
(In reply to Mike from comment #5)
> Do you have any information when kernel 5.9 will be released?
> 5.9 will build for Fedora 32?
> I tryed Fedora 33 in live - touchpad not work. I still stay on Fedora 32
> 
> Anybody can change group the issue for all around?

The 5.9 kernel is in updates testing for both Fedora 32 and Fedora 33 now. Note since you tried the 5.8.15 kernel and that did not help, I do not really expect the 5.9 kernel to help either, it looks like your system has another issue then some of the other IIL models.

Reading your original post again I know notice that you mentioned this error:

[ 1.434574] platform i2c_designware.0: failed to claim resource 0: [mem 0x00000000-0x000001ff]

That does seem like a likely cause of the problem, and the patch which I did for some of the other models will not help for this issue.

Can you do the following please:

1. Start a terminal
2. Become root "sudo su -"
3. Run:

dmesg > dmesg.txt
cat /proc/iomem > iomem.txt
dnf install acpica-tools
acpidump -o acpidump.txt

And attach the generated dmesg.txt iomem.txt and acpidump.txt files here?

Comment 7 Mike 2020-11-19 07:37:40 UTC
Created attachment 1730790 [details]
dmesg.txt

dmesg dump

Comment 8 Mike 2020-11-19 07:38:17 UTC
Created attachment 1730791 [details]
iomem.txt

iomem dump

Comment 9 Mike 2020-11-19 07:39:06 UTC
Created attachment 1730792 [details]
acpidump.txt

acpi dump

Comment 10 Mike 2020-11-19 07:40:04 UTC
Today i updated to 5.9.8-100 but Hans de Goede was right - it's not helped.

Attached:
dmesg.txt
iomem.txt
acpidump.txt

Comment 11 Mike 2020-12-16 09:07:39 UTC
Now i updated kernel to 5.9.13-100.fc32.x86_64 but nothing has changed. Any have idea?

Comment 12 Mike 2021-01-18 08:23:43 UTC
Updated to kernel 5.10.7-100.fc32.x86_64. Touchpad doesn't worked.

xinput --list:
WARNING: running xinput against an Xwayland server. See the xinput man page for details.
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ xwayland-relative-pointer:17            	id=7	[slave  pointer  (2)]
⎜   ↳ xwayland-pointer:17                     	id=6	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ xwayland-keyboard:17                    	id=8	[slave  keyboard (3)]

Output:
cat /proc/bus/input/devices
not be chaned

Comment 13 Hans de Goede 2021-01-18 13:04:58 UTC
Thank you for providing the requested logs and acpidump.

Sorry, I've been very busy with other work things which have a higher priority then this bug.

I do still have this on my TODO list, but I don't know when I will get around to looking into this.

I will leave this in NEEDINFO so that I get weekly reminders from bugzilla that I need to look into this.

Comment 14 Hans de Goede 2021-02-16 10:59:25 UTC
First of all once more my apologies for taking so long to get back to you on this.

I've been studying your logs and I'm not really sure yet what exactly is going on here.

First of all these messages:

[    1.424312] platform idma64.0: failed to claim resource 0: [mem 0x00000800-0x00000fff]
[    1.424314] intel-lpss 0000:00:15.0: Failed to add idma64, fallback to PIO
[    1.424322] platform i2c_designware.0: failed to claim resource 0: [mem 0x00000000-0x000001ff]
[    1.424430] intel-lpss: probe of 0000:00:15.0 failed with error -16

May be the problem, but OTOH they may also not be the problem ...

So I'm afraid that I'm going to need some more info.

Can you please from a terminal run the following commands and copy and paste the output here:

cd /sys/bus/pci/devices/
for i in *; do echo -n "$i: "; cat "$i/firmware_node/path"; done

Likewise also please run this command from a terminal:

cd /sys/bus/acpi/devices
for i in *; do if [ -f "$i/status" ]; then echo -n "$i: "; cat "$i/status"; fi; done

And this one:

ls -l /sys/bus/i2c/devices

Comment 15 Hans de Goede 2021-02-16 11:08:43 UTC
Also looking at the PCI device 0000:00:15.0 in the logs I think that the suggestion to use pci=nocrs may help.

To try this run the following command:

sudo grubby --update-kernel=ALL --args="pci=nocrs"

And then reboot.

After rebooting please collect a new dmesg output and also a new output of "ls -l /sys/bus/i2c/devices"

Comment 16 Hans de Goede 2021-02-16 15:59:40 UTC
One more thing, you said that this started after a BIOS upgrade, right?

Sometimes BIOS upgrades don't clear the BIOS settings even though they should, causing the new BIOS to interpret the binary settings blob from the old BIOS in the wrong way. This may also cause hidden settings to be wrong.

Have you tried loading the BIOS default or optimal settings? If not then that is worth a shot.

Note if you are multibooting with Windows then this might very well remove the Fedora bootoption from the EFI boot menu. In that case you need to boot from a USB stick with a LiveCD on it and use efibootmgr to restore the Fedora boot entry.

Comment 17 Mike 2021-02-17 15:19:57 UTC
Yes, after updated BIOS - touchpad not worked. But late i downgrade BIOS and nothing chages. Now i stay on old(stock) BIOS version.

I run grubby and reboot machine. Touchpad is working!!!

Below i attached files with requested output

Very thanks for your help!!!

Comment 18 Mike 2021-02-17 15:22:24 UTC
Created attachment 1757588 [details]
firmware_node

Comment 19 Mike 2021-02-17 15:23:24 UTC
Created attachment 1757589 [details]
acpi_devices_status

Comment 20 Mike 2021-02-17 15:24:00 UTC
Created attachment 1757590 [details]
i2c_devices

Comment 21 Mike 2021-02-17 15:24:49 UTC
Created attachment 1757591 [details]
i2c_devices after grubby

Comment 22 Mike 2021-02-17 15:25:36 UTC
Created attachment 1757592 [details]
dmesg after grubby

Comment 23 Hans de Goede 2021-02-17 18:08:17 UTC
Thank you for all the logs.

And I'm happy to hear that your touchpad now works.

I think that the best option might be to automatically make the kernel use/apply the pci=nocrs on your model by adding a quirk matching on the DMI vendor + product name/version strings. Then once that hits the stable kernel updates, things will automatically work OOTB (out of the box) for other people with the same model laptop.

To add such a quirk to the kernel I need to know the DMI strings for your device.

As a normal user please run the following command and then provide the output here:

grep . /sys/class/dmi/id/* 2> /dev/null


Also I still wonder if this cannot be fixed by loading the BIOS default/optimal settings. Have you tried this already ?

To undo the grubby / kernel-commandline change run:

sudo grubby --update-kernel=ALL --remove-args="pci=nocrs"

If you can:

1. Run sudo grubby --update-kernel=ALL --remove-args="pci=nocrs"
2. Reset your BIOS to its defaults
3. Boot and see if the touchpad now works

Then that would be great.

If the touchpad does not work, you can re-add the pci=nocrs option to the kernel commandline by running:

sudo grubby --update-kernel=ALL --args="pci=nocrs"

again.

Comment 24 Mike 2021-02-19 07:08:54 UTC
After undo grubby command i did as you described above and everything worked.
Then i decide updated BIOS. Stock version - DSN22WW(v1.08).
After i updated BIOS the touchpad don't working. After reset settings BIOS by default - touchpad working
New BIOS - DSCN32WW(v1.18)

Below i attachment DMI out.

Comment 25 Mike 2021-02-19 07:09:36 UTC
Created attachment 1758005 [details]
DMI

Comment 26 Hans de Goede 2021-02-19 09:14:36 UTC
Thank you for all the info / logs / tests.

One last question, you say that the touchpad works with the new BIOS version after loading the BIOS default settings.

Does it work with the new (reset) BIOS without pci=nocrs, or do you still need to have pci=nocrs on yuor kernel commandline ?

Comment 27 Mike 2021-02-19 10:40:40 UTC
No, after undo grubby i didn't do any more added arg pci=nocrs.
Only set BIOS default settings.

This now output:
sudo grubby --info="/boot/vmlinuz-$(uname -r)"
index=0
kernel="/boot/vmlinuz-5.10.13-100.fc32.x86_64"
args="ro resume=/dev/mapper/fedora_localhost--live-swap rd.lvm.lv=fedora_localhost-live/root rd.lvm.lv=fedora_localhost-live/swap rhgb quiet systemd.unified_cgroup_hierarchy=0"
root="/dev/mapper/fedora_localhost--live-root"
initrd="/boot/initramfs-5.10.13-100.fc32.x86_64.img"
title="Fedora (5.10.13-100.fc32.x86_64) 32 (Thirty Two)"
id="947d55cb56574d768c567931268a0f8b-5.10.13-100.fc32.x86_64"

Comment 28 Hans de Goede 2021-02-19 10:54:17 UTC
So the new BIOS + reset fixes this issue. That is nice :)

But it won't help users of the same (or similar) laptops who don't know that that is what they need to do...

So now I'm wondering what to do with this bug. I see that you marked this bug as fedora_contrib_private, so that only Fedora contributors can see it.

I would like to discuss this issue with the kernel PCI subsystem maintainers and point them here for more details; and I don't see any sensitive information in this bug-report, is it ok if I open up this bug to be visible to everyone?

Comment 29 Mike 2021-02-19 13:03:23 UTC
Yes, open pleas this bug for everyone. I selected private group - this my mistake.

Comment 30 Hans de Goede 2021-02-19 18:28:47 UTC
Ok, I've opened this up now.

One last question, according to:
https://bugs.launchpad.net/bugs/1878279

This seems to be related to multi-booting Windows.

Do you have Windows on the device ?

If yes, then can you try booting into Windows and then reboot into Linux and check if the touchpad still works after this ?

Comment 31 Mike 2021-02-26 04:47:09 UTC
Yes, i have multiboot, but there are no problems when switching from one OS to another. Touchpad working.
Important. OS must be installed from UEFI, not Legacy Support.

Comment 32 Fedora Program Management 2021-04-29 17:05:53 UTC
This message is a reminder that Fedora 32 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 32 on 2021-05-25.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '32'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 32 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 33 Ben Cotton 2021-05-25 17:47:42 UTC
Fedora 32 changed to end-of-life (EOL) status on 2021-05-25. Fedora 32 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 34 Hans de Goede 2021-05-26 10:53:43 UTC
Ugh, I dropped the ball a bit on this one.

I know it is resolved for you (Mike) but other users are still hitting this:
https://bugs.launchpad.net/ubuntu/+source/linux-signed-hwe/+bug/1878279

I'll try to gather some more info on the launchpad bug and then start a discussion about this upstream.

Comment 35 Al Takishita 2021-07-09 16:04:37 UTC
Hi,
   I have Fedora 34 w/ Win10 dual boot installed on a Lenovo Ideapad 3 17IIL05. I am currently running kernel 5.12.14-300.FC34.86_64. I followed your instructions in Comment #23 except for 
"Rest Bios" and touchpad now works.  
    
   Output of xinput --list
       ⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ Logitech M235/238/317                   	id=10	[slave  pointer  (2)]
⎜   ↳ MSFT0001:01 06CB:CE2D Mouse             	id=11	[slave  pointer  (2)]
⎜   ↳ MSFT0001:01 06CB:CE2D Touchpad          	id=12	[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=13	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=14	[slave  keyboard (3)]
    ↳ Logitech M235/238/317                   	id=15	[slave  keyboard (3)]  

   Prior to editing the kernel parameters, Doing Applications-Settings-Mouse and Touchpad, Logitech M235/238/317 (mouse) was only Device available.  Now MSFT0001:01 06CB:CE2D Mouse and 
      MSFT0001:01 06CB:CE2D Touchpad are also listed.  

   I selected kernel 5.12.13-300.FC34.86-64 on reboot and it also works OK.

   Thank you very much for your help.  I done a lot of searching the last few days w/ no success.  Somehow, I came across you item.

   Again thank you.

   Stay healthy, stay safe,
   
   Tak

Comment 36 Hans de Goede 2021-10-04 16:06:46 UTC
Hi,

Sorry for the long silence on this bug. I was hoping one of the upstream pci-subsys devs would help out with fixing this  for those of you where adding "pci=nocrs" on the kernel commandline fixes this.

Since that did not happen I've been looking into fixing the "pci=nocrs" case myself now. I've come up with a solution which still involves a kernel cmdline option for now, but this one is a much smaller hammer (almost a scalpel) and once it is confirmed that this works I can enable this by default through a DMI quirk.

I've build a test-kernel with support for the new kernel cmdline option here:
https://koji.fedoraproject.org/koji/taskinfo?taskID=76687852

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

Please undo the pci=nocrs workaround by running:

sudo grubby --update-kernel=ALL --remove-args=pci=nocrs

And then enable the new workaround by:

sudo grubby --update-kernel=ALL --args=pci=no_e820

Also please run the following command *as normal user* to collect the DMI strings for your laptop, so that they can be used to add a quirk:

grep . /sys/class/dmi/id/* 2> /dev/null

And copy and paste the output here.

Comment 37 Hans de Goede 2021-10-04 16:12:15 UTC
p.s.

Please also provide dmesg output for the new kernel after booting it with pci=no_e820 on the kernel cmdline.

Comment 38 Hans de Goede 2021-10-05 10:01:51 UTC
Thanks to testing by Matt from bug 1868899 it has been confirmed that the new pci=no_e820 kernel cmdline option from the kernel from comment 36 fixes the touchpad not working.

I'm going to submit this upstream / to the mainline kernel soon, including a DMI quirk for Matt's "Lenovo IdeaPad 3 15IIL05" to automatically enable the pci=no_e820 behavior on that model.

If you are following this bug and need pci=nocrs to have your touchpad working please test the kernel from comment 36 according to the instructions there. If you can confirm that this fixes things and provide DMI strings, then I can add a quirk for your model too.  This will make the touchpad just work OOTB with future kernels, without needing any special workarounds.

Comment 39 Hans de Goede 2021-10-11 09:39:27 UTC
There is a new scratch kernel with a new fix here:
https://koji.fedoraproject.org/koji/taskinfo?taskID=77061333

This version should work without any special kernel commandline options, if someone can give this a try that would be great.

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

Please undo the pci=nocrs workaround by running:

sudo grubby --update-kernel=ALL --remove-args=pci=nocrs

When testing.

It is no longer necessary to collect DMI strings since this version contains a generic fix.

Comment 40 Hans de Goede 2022-02-09 15:20:06 UTC
A while ago the generic fix for this has landed in the Fedora 5.15 kernels, unfortunately it is causing a regression on some other laptops (see bug 2029207) so we are going to have to revert the fix again :| I'm still discussing alternative fixes upstream.

To figure things out, it would really help if you have a laptop where pci=nocrs fixes the touchpad, to boot the laptop with "efi=debug" added to the kernel commandline and then directly after booting do:

dmesg > dmesg-efi-debug.txt

And attach the dmesg-efi-debug.txt file here, it does not matter which kernel you do this with.

Comment 41 Mike 2022-02-09 16:05:44 UTC
Hello. I want report new problem with this touchpad. If i change wayland on Xorg, touchpad can't handle event tap and in settings not recognized touchpad, system seems i use mouse. And more don't work (more one) fingers swipes - my workaround install GNOME extensial X11 Gestures.

How check pci=nocrs?

Comment 42 Hans de Goede 2022-02-09 16:09:41 UTC
(In reply to Mike from comment #41)
> Hello. I want report new problem with this touchpad. If i change wayland on
> Xorg, touchpad can't handle event tap and in settings not recognized
> touchpad, system seems i use mouse. And more don't work (more one) fingers
> swipes - my workaround install GNOME extensial X11 Gestures.

That is a completely different, unrelated problem. Please file a new bug against component libinput for this.

Comment 43 Hans de Goede 2022-02-09 17:16:20 UTC
I have come up with an alternative fix for the issue where the touchpad does not work unless pci=nocrs is passed on the kernel cmdline. I have started a test kernel-build with this new patch (replacing the previous one) here:
https://koji.fedoraproject.org/koji/taskinfo?taskID=82606916

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

If you need pci=nocrs for your touchpad to work, please give this kernel a test (without pci=nocrs on the kernel cmdline) and let me know if the touchpad still works with this kernel ? (I fully expect it will)

Comment 44 Arslan A. 2022-04-17 16:20:46 UTC
Hello, Hans.

In my case only pci=nocrs fixes the touchpad issue.

Linux fedora 5.16.19-200.fc35.x86_64 #1 SMP PREEMPT Fri Apr 8 15:34:44 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

/sys/class/dmi/id/bios_date:07/22/2020
/sys/class/dmi/id/bios_release:1.48
/sys/class/dmi/id/bios_vendor:LENOVO
/sys/class/dmi/id/bios_version:DKCN48WW
/sys/class/dmi/id/board_asset_tag:NO Asset Tag
/sys/class/dmi/id/board_name:LNVNB161216
/sys/class/dmi/id/board_vendor:LENOVO
/sys/class/dmi/id/board_version: NO DPK
/sys/class/dmi/id/chassis_asset_tag:NO Asset Tag
/sys/class/dmi/id/chassis_type:10
/sys/class/dmi/id/chassis_vendor:LENOVO
/sys/class/dmi/id/chassis_version:Lenovo V14-IIL
/sys/class/dmi/id/ec_firmware_release:1.48
/sys/class/dmi/id/modalias:dmi:bvnLENOVO:bvrDKCN48WW:bd07/22/2020:br1.48:efr1.48:svnLENOVO:pn82C4:pvrLenovoV14-IIL:rvnLENOVO:rnLNVNB161216:rvrNODPK:cvnLENOVO:ct10:cvrLenovoV14-IIL:skuLENOVO_MT_82C4_BU_idea_FM_V14-IIL:
/sys/class/dmi/id/product_family:V14-IIL
/sys/class/dmi/id/product_name:82C4
/sys/class/dmi/id/product_sku:LENOVO_MT_82C4_BU_idea_FM_V14-IIL
/sys/class/dmi/id/product_version:Lenovo V14-IIL
/sys/class/dmi/id/sys_vendor:LENOVO
/sys/class/dmi/id/uevent:MODALIAS=dmi:bvnLENOVO:bvrDKCN48WW:bd07/22/2020:br1.48:efr1.48:svnLENOVO:pn82C4:pvrLenovoV14-IIL:rvnLENOVO:rnLNVNB161216:rvrNODPK:cvnLENOVO:ct10:cvrLenovoV14-IIL:skuLENOVO_MT_82C4_BU_idea_FM_V14-IIL:

Comment 45 Hans de Goede 2022-05-13 16:12:03 UTC
> In my case only pci=nocrs fixes the touchpad issue.

Unfortunately the last attempt fix this did not stick upstream because it caused regressions on some chromebooks.

So there is a new patch to attempt to fix this here:
https://lore.kernel.org/linux-pci/20220512202511.34197-2-hdegoede@redhat.com/

This new patch should also fix things on your Lenovo V14-IIL laptop.

A Fedora test-kernel with these patches is building here:
https://koji.fedoraproject.org/koji/taskinfo?taskID=86998438
this should be done in a couple of hours.

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

Can you please give this one a test and check if the touchpad still works with this new test-kernel?

When running the new kernel please run:

dmesg | grep "E820 res"

This should output:

"PCI: ignoring E820 reservations for host bridge windows"

and then your touchpad should work normally.

Comment 46 Bjorn Helgaas 2022-11-22 16:02:47 UTC
Created attachment 1926438 [details]
experimental patch to remove EfiMemoryMappedIO

It looks like this is a duplicate of https://bugzilla.redhat.com/show_bug.cgi?id=1868899

The current upstream resolution to this problem is https://git.kernel.org/linus/d341838d776a ("x86/PCI: Disable E820 reserved region clipping via quirks"), which relies on quirks that match DMI Vendor, Product Version, Product Name, and Board Name.  This isn't an ideal solution because there are likely other systems we don't know about that need the a similar fix.

The patch I'm attaching here is an experimental idea to work around this issue without the maintenance burden of the quirks.

If anybody would be willing to test this patch, I would be very grateful.  To test it, apply this patch to your kernel, boot with "pci=use_e820 efi=debug", and collect the dmesg log.

Comment 47 Ben Cotton 2023-04-25 16:40:32 UTC
This message is a reminder that Fedora Linux 36 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora Linux 36 on 2023-05-16.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
'version' of '36'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, change the 'version' 
to a later Fedora Linux version. Note that the version field may be hidden.
Click the "Show advanced fields" button if you do not see it.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora Linux 36 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora Linux, you are encouraged to change the 'version' to a later version
prior to this bug being closed.

Comment 48 Bjorn Helgaas 2023-04-25 19:21:17 UTC
I think this issue should be resolved by 07eab0901ede ("efi/x86: Remove EfiMemoryMappedIO from E820 map") (https://git.kernel.org/linus/07eab0901ede), which appeared in v6.2.

Let me know if you still see this issue with a kernel that includes 07eab0901ede.

Comment 49 Ludek Smid 2023-05-25 17:00:20 UTC
Fedora Linux 36 entered end-of-life (EOL) status on 2023-05-16.

Fedora Linux 36 is no longer maintained, which means that it
will not receive any further security or bug fix updates. As a result we
are closing this bug.

If you can reproduce this bug against a currently maintained version of Fedora Linux
please feel free to reopen this bug against that version. Note that the version
field may be hidden. Click the "Show advanced fields" button if you do not see
the version field.

If you are unable to reopen this bug, please file a new report against an
active release.

Thank you for reporting this bug and we are sorry it could not be fixed.