Cannot use Function Keys or make laptop sleep. Trackpad regularly doesn't work on boot - F31

Hello!

I have been trying to install Fedora 31 on my laptop (Lenovo Yoga S740, i5-1035G4, Intel Iris Plus Graphics, Microsoft Precision Trackpad) and have unfortunately run into a few issues.

As the title says, I cannot control anything other than volume using the function keys (the rest do nothing) and the only way I can get the laptop to sleep is using “systemctl suspend”. Shutting the lid or using the power button does not work.

I also regularly have cases where the trackpad does not work on boot, and will not work until I reboot the laptop (sometimes multiple times).

Therefore I was wondering if anybody has any ideas as to how I could debug these issues.

Thanks in advance for any help

Power key: How to bind a Power button to “suspend” in Gnome3.

May be related to trackpad issue.

Could you please provide the output of:

sudo hwinfo
lspci -vv
cat /proc/interrupts
dmesg

If the embedded keyboard is not responsive try an external USB.

Thanks

1 Like

Thanks for the reply!

I’m not sure how to attach the logs as I can’t upload .txt and they are too long to paste here.

Therefore, I have uploaded the hwinfo and dmesg to the ubuntu pastebin as they are the longest and the others I’ve pasted here.

hwinfo: https://paste.ubuntu.com/p/6wRxmkSrnV/
Lspci

Summary

00:00.0 Host bridge: Intel Corporation Device 8a12 (rev 03)
Subsystem: Lenovo Device 3802
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Capabilities:
Kernel driver in use: icl_uncore

00:02.0 VGA compatible controller: Intel Corporation Device 8a5a (rev 07) (prog-if 00 [VGA controller])
Subsystem: Lenovo Device 3ff2
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 127
Region 0: Memory at 601c000000 (64-bit, non-prefetchable) [size=16M]
Region 2: [virtual] Memory at 4000000000 (64-bit, prefetchable) [size=256M]
Region 4: I/O ports at 3000 [size=64]
[virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
Capabilities:
Kernel driver in use: i915
Kernel modules: i915

00:04.0 Signal processing controller: Intel Corporation Device 8a03 (rev 03)
Subsystem: Lenovo Device 3801
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 16
Region 0: Memory at 601d150000 (64-bit, non-prefetchable) [size=64K]
Capabilities:
Kernel driver in use: proc_thermal
Kernel modules: processor_thermal_device

00:07.0 PCI bridge: Intel Corporation Ice Lake Thunderbolt 3 PCI Express Root Port #0 (rev 03) (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 122
Bus: primary=00, secondary=01, subordinate=2a, sec-latency=0
I/O behind bridge: 00004000-00004fff [size=4K]
Memory behind bridge: 46000000-521fffff [size=194M]
Prefetchable memory behind bridge: 0000006000000000-000000601bffffff [size=448M]
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities:
Kernel driver in use: pcieport

00:0d.0 USB controller: Intel Corporation Ice Lake Thunderbolt 3 USB Controller (rev 03) (prog-if 30 [XHCI])
Subsystem: Lenovo Device 3803
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin ? routed to IRQ 124
Region 0: Memory at 601d140000 (64-bit, non-prefetchable) [size=64K]
Capabilities:
Kernel driver in use: xhci_hcd

00:0d.2 System peripheral: Intel Corporation Ice Lake Thunderbolt 3 NHI #0 (rev 03)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
Region 0: Memory at 601d100000 (64-bit, non-prefetchable) [size=256K]
Region 2: Memory at 601d16f000 (64-bit, non-prefetchable) [size=4K]
Capabilities:
Kernel driver in use: thunderbolt
Kernel modules: thunderbolt

00:14.0 USB controller: Intel Corporation Ice Lake-LP USB 3.1 xHCI Host Controller (rev 30) (prog-if 30 [XHCI])
Subsystem: Lenovo Device 3807
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 125
Region 0: Memory at 52300000 (64-bit, non-prefetchable) [size=64K]
Capabilities:
Kernel driver in use: xhci_hcd

00:14.2 RAM memory: Intel Corporation Device 34ef (rev 30)
Subsystem: Lenovo Device 3808
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Region 0: Memory at 601d168000 (64-bit, non-prefetchable) [size=8K]
Region 2: Memory at 601d16e000 (64-bit, non-prefetchable) [size=4K]
Capabilities:

00:14.3 Network controller: Intel Corporation Killer Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) (rev 30)
Subsystem: Intel Corporation Device 0074
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
Region 0: Memory at 601d164000 (64-bit, non-prefetchable) [size=16K]
Capabilities:
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi

00:15.0 Serial bus controller [0c80]: Intel Corporation Ice Lake-LP Serial IO I2C Controller #0 (rev 30)
Subsystem: Lenovo Device 380a
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
Region 0: [virtual] Memory at 4010000000 (64-bit, non-prefetchable) [size=4K]
Capabilities:
Kernel driver in use: intel-lpss

00:15.1 Serial bus controller [0c80]: Intel Corporation Ice Lake-LP Serial IO I2C Controller #1 (rev 30)
Subsystem: Lenovo Device 380b
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin B routed to IRQ 17
Region 0: Memory at 4010001000 (64-bit, non-prefetchable) [size=4K]
Capabilities:
Kernel driver in use: intel-lpss

00:16.0 Communication controller: Intel Corporation Management Engine Interface (rev 30)
Subsystem: Lenovo Device 380d
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 152
Region 0: Memory at 601d16b000 (64-bit, non-prefetchable) [size=4K]
Capabilities:
Kernel driver in use: mei_me
Kernel modules: mei_me

00:1d.0 PCI bridge: Intel Corporation Device 34b4 (rev 30) (prog-if 00 [Normal decode])
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 123
Bus: primary=00, secondary=2b, subordinate=2b, sec-latency=0
I/O behind bridge: None
Memory behind bridge: 52200000-522fffff [size=1M]
Prefetchable memory behind bridge: None
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities:
Kernel driver in use: pcieport

00:1f.0 ISA bridge: Intel Corporation Ice Lake-LP LPC Controller (rev 30)
Subsystem: Lenovo Device 380f
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0

00:1f.3 Multimedia audio controller: Intel Corporation Smart Sound Technology Audio Controller (rev 30)
Subsystem: Lenovo Device 3810
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 32, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
Region 0: Memory at 601d160000 (64-bit, non-prefetchable) [size=16K]
Region 4: Memory at 601d000000 (64-bit, non-prefetchable) [size=1M]
Capabilities:
Kernel driver in use: sof-audio-pci
Kernel modules: snd_hda_intel, snd_sof_pci

00:1f.4 SMBus: Intel Corporation Ice Lake-LP SMBus Controller (rev 30)
Subsystem: Lenovo Device 380e
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 16
Region 0: Memory at 601d16a000 (64-bit, non-prefetchable) [size=256]
Region 4: I/O ports at 3040 [size=32]
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801

00:1f.5 Serial bus controller [0c80]: Intel Corporation Ice Lake-LP SPI Controller (rev 30)
Subsystem: Lenovo Device 3811
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0
Region 0: Memory at (32-bit, non-prefetchable)

2b:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983 (prog-if 02 [NVM Express])
Subsystem: Samsung Electronics Co Ltd Device a801
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 16
NUMA node: 0
Region 0: Memory at 52200000 (64-bit, non-prefetchable) [size=16K]
Capabilities:
Kernel driver in use: nvme
Kernel modules: nvme

Interrupts

Summary
        CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7       

1: 0 336 0 0 0 0 0 0 IR-IO-APIC 1-edge i8042
8: 0 0 0 0 0 0 0 0 IR-IO-APIC 8-edge rtc0
9: 0 100000 0 0 0 0 0 0 IR-IO-APIC 9-fasteoi acpi
14: 0 0 0 0 0 0 0 0 IR-IO-APIC 14-fasteoi INT3455:00
16: 0 0 0 0 0 0 0 0 IR-IO-APIC 16-fasteoi i2c_designware.0, idma64.0, i801_smbus
17: 0 0 0 0 0 897 0 0 IR-IO-APIC 17-fasteoi i2c_designware.1, idma64.1
48: 0 0 0 0 230 0 0 0 IR-IO-APIC 48-fasteoi MSFT0001:01
120: 0 0 0 0 0 0 0 0 DMAR-MSI 0-edge dmar0
121: 0 0 0 0 0 0 0 0 DMAR-MSI 1-edge dmar1
122: 0 0 0 0 0 0 0 0 IR-PCI-MSI 114688-edge PCIe PME, pciehp
123: 0 0 0 0 0 0 0 0 IR-PCI-MSI 475136-edge PCIe PME
124: 0 0 0 0 0 0 0 0 IR-PCI-MSI 212992-edge xhci_hcd
125: 0 0 0 0 0 0 0 6367 IR-PCI-MSI 327680-edge xhci_hcd
126: 0 0 0 0 0 0 23 0 IR-PCI-MSI 22544384-edge nvme0q0
127: 0 0 0 0 0 10218 0 0 IR-PCI-MSI 32768-edge i915
128: 1085 0 0 0 0 0 0 0 IR-PCI-MSI 22544385-edge nvme0q1
129: 0 9697 0 0 0 0 0 0 IR-PCI-MSI 22544386-edge nvme0q2
130: 0 0 3050 0 0 0 0 0 IR-PCI-MSI 22544387-edge nvme0q3
131: 0 0 0 1293 0 0 0 0 IR-PCI-MSI 22544388-edge nvme0q4
132: 0 0 0 0 6218 0 0 0 IR-PCI-MSI 22544389-edge nvme0q5
133: 0 0 0 0 0 2121 0 0 IR-PCI-MSI 22544390-edge nvme0q6
134: 0 0 0 0 0 0 2547 0 IR-PCI-MSI 22544391-edge nvme0q7
135: 0 0 0 0 0 0 0 3047 IR-PCI-MSI 22544392-edge nvme0q8
136: 0 0 74 0 0 0 0 0 IR-PCI-MSI 217088-edge thunderbolt
137: 0 0 0 76 0 0 0 0 IR-PCI-MSI 217089-edge thunderbolt
152: 0 0 0 0 0 0 0 46 IR-PCI-MSI 360448-edge mei_me
153: 733 0 0 0 0 0 0 0 IR-PCI-MSI 333824-edge iwlwifi: default queue
154: 10 0 0 0 0 0 0 0 IR-PCI-MSI 333825-edge iwlwifi: queue 1
155: 0 116 0 0 0 0 0 0 IR-PCI-MSI 333826-edge iwlwifi: queue 2
156: 0 0 97 0 0 0 0 0 IR-PCI-MSI 333827-edge iwlwifi: queue 3
157: 0 0 0 6 0 0 0 0 IR-PCI-MSI 333828-edge iwlwifi: queue 4
158: 0 0 0 0 14 0 0 0 IR-PCI-MSI 333829-edge iwlwifi: queue 5
159: 0 0 0 0 0 21 0 0 IR-PCI-MSI 333830-edge iwlwifi: queue 6
160: 0 0 0 0 0 0 201 0 IR-PCI-MSI 333831-edge iwlwifi: queue 7
161: 0 0 0 0 0 0 0 12 IR-PCI-MSI 333832-edge iwlwifi: queue 8
162: 0 4 0 0 0 0 0 0 IR-PCI-MSI 333833-edge iwlwifi: exception
NMI: 2 3 2 2 1 1 1 1 Non-maskable interrupts
LOC: 26191 30026 26318 26232 20887 35929 22731 22668 Local timer interrupts
SPU: 0 0 0 0 0 0 0 0 Spurious interrupts
PMI: 2 3 2 2 1 1 1 1 Performance monitoring interrupts
IWI: 2 2 1 1 3 1513 2 0 IRQ work interrupts
RTR: 5 0 0 0 0 0 0 0 APIC ICR read retries
RES: 5959 2403 1898 1141 1669 1622 1222 1280 Rescheduling interrupts
CAL: 4926 4675 4895 4917 4311 4228 4981 4573 Function call interrupts
TLB: 1922 1902 2131 2224 3402 2165 2165 1558 TLB shootdowns
TRM: 0 0 0 0 0 0 0 0 Thermal event interrupts
THR: 0 0 0 0 0 0 0 0 Threshold APIC interrupts
DFR: 0 0 0 0 0 0 0 0 Deferred Error APIC interrupts
MCE: 0 0 0 0 0 0 0 0 Machine check exceptions
MCP: 1 2 2 2 2 2 2 2 Machine check polls
HYP: 0 0 0 0 0 0 0 0 Hypervisor callback interrupts
HRE: 0 0 0 0 0 0 0 0 Hyper-V reenlightenment interrupts
HVS: 0 0 0 0 0 0 0 0 Hyper-V stimer0 interrupts
ERR: 0
MIS: 0
PIN: 0 0 0 0 0 0 0 0 Posted-interrupt notification event
NPI: 0 0 0 0 0 0 0 0 Nested posted-interrupt event
PIW: 0 0 0 0 0 0 0 0 Posted-interrupt wakeup event

Dmesg: https://paste.ubuntu.com/p/JTtH6FGZrq/

  • Kernel is vmlinuz-5.5.5-200.fc31.x86_64. I belive that the current live USB comes with 5.37.
    Did you installed and updated F31 afterwards?
    Could you confirm if the issue happens while using the live F31 usb? Fedora-Workstation-Live-x86_64-31-1.9.iso

  • I don’t see the high interrupt count in 16-fasteoi i2c_designware.0, idma64.0, i801_smbus, but dmesg shows issues related with i2c_designware i2c_designware.1: controller timed out.
    Apparently i2c-MSFT0001 device is for your trackpad and maybe some extra function buttons could be wired in i2c bus as well?

  • @thepiguy could you post a screenshot of htop (ideally with detailed cpu info: F2 > Display -> Check detailed CPU time)

  • If you have the previous installed kernel, also try with it (ESC during boot -> Grub menu entry -> select 5.3.7 if available, enter). You can confirm the running kernel with uname -a.

Yes I did do a full upgrade as I get some serious graphical glitches with 5.3.7 (which I noticed again when I dropped back to 5.3.7 for testing).

With 5.5.5, I noticed that the audio also doesn’t appear to work (it says Dummy Audio), but it does work in 5.3.7. Also, using the 5.3.7, my trackpad does appear to work ok (at least, I haven’t hit a boot where it doesn’t yet) but I do get graphical glitches instead. The rest of the problems (no sleep and no control from the FN keys other than volume) still exist.

Another (possibly related) issue I noticed: When I shut the laptop down, it never actually turns off. It just gets to a shutdown state and then stays there until I hold the power button down.

Please see the attached images of htop for the 5.5.5 kernel (if you need 5.3.7, I can post it as well but I can only post one at a time for the moment as I am a new user)


Edit: Realised I forgot to check detailed cpu time - the above should have it

I asked for the htop print because in my case the “device conflict” (?) generates a lot of interrupts / kernel waits.

After 5.5.5 I am seeing a kernel panic just before shutdown (after all process end gracefully and the system is about to shutoff – it shows the error but even so do shutdown). Maybe in your case it’s more catastrophic and the process is aborted.

Ah ok. Well, thank-you for all the help!

@thepiguy: I had some progress with my issue (High CPU usage (kernel threads) in idle F31 / Poor UX responsiveness)

Try adding initcall_blacklist=dw_i2c_init_driver module_blacklist=idma64 to your kernel args in grub and see if it helps.

or even (for debugging):
module_blacklist=i2c_i801,i2c_designware,i2c_designware.0,intel-lpss,i2c_dev,i2c_algo_bit,idma64,i2c_hid,dw_i2c_init_driver,r8169 initcall_blacklist=dw_i2c_init_driver,i2c_dw_init_master,i2c_dw_probe

I noticed that in your case you have multiple devices routed to the IRQ 16 (eg. networking, i2c touchpad?..).

It was similar to my problematic case in F31, but then booting F22, which works fine, I see the devices routed to individual IRQs.

Cheers

1 Like

Sorry for the late reply. I finally managed to try the first one but there was unfortunately no change

Edit: regarding the trackpad, I found another user on the Arch Linux forums that has the same issue - apparently it’s a kernel regression (my laptop needs the latest at the moment so I can’t test that, but apparently the trackpad has no issues on 4.19)