[<prev] [next>] [day] [month] [year] [list]
Message-ID: <CANU5j=Vq15GHbQ3k7y1D_vK+bTDz4i9aAe2haXcqXOY12hSrgg@mail.gmail.com>
Date: Fri, 1 May 2020 21:41:53 +0200
From: Czuczu <maciej.czuchnowski@...il.com>
To: Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc: linux-input@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: PROBLEM: Touchpad does not work after suspend on Lenovo X1 Carbon 6th
[1.] One line summary of the problem:
Touchpad does not work after suspend on Lenovo X1 Carbon 6th
[2.] Full description of the problem/report:
Touchpad and trackpoint are correctly detected and work perfectly fine
when the laptop powers up. After closing the lid, it goes into S3
suspend mode. After waking up, in most cases the touchpad and
trackpoint stop working. Sometimes one of them works, sometimes both,
seems very random. Tested on freshly compiled 5.7-rc3 kernel, same
thing seems to happen on older versions as well (including stable - I
tried Ubuntu 18.04, 20.04 and Fedora 31 and 32 with their built-in
kernels). Doing rmmod and modprobe on psmouse module once or twice
brings back the devices to life. dmesg shows some additional issues
when using the touchpad as well. I'm ready to test whatever fixes you
come up with, the laptop isn't currently being used, can be turned
into full time testing machine to finally fix this issue.
[4.] Kernel information
[4.1.] Kernel version (from /proc/version):
Linux version 5.7.0-rc3 (maciej@...net) (gcc version 9.3.0 (Ubuntu
9.3.0-10ubuntu2), GNU ld (GNU Binutils for Ubuntu) 2.34) #1 SMP Fri
May 1 17:07:39 CEST 2020
[4.2.] Kernel .config file:
Attached as config file.
[5.] Most recent kernel version which did not have the bug:
None found
[6.] Output of Oops.. message (if applicable) with symbolic information
resolved (see Documentation/admin-guide/bug-hunting.rst)
Not applicable
[7.] A small shell script or example program which triggers the
problem (if possible)
systemctl suspend or closing the lid, then waking the laptop
[8.] Environment
[8.1.] Software (add the output of the ver_linux script here)
Linux skynet 5.7.0-rc3 #1 SMP Fri May 1 17:07:39 CEST 2020 x86_64
x86_64 x86_64 GNU/Linux
GNU Make 4.2.1
Binutils 2.34
Util-linux 2.34
Mount 2.34
Module-init-tools 27
E2fsprogs 1.45.5
Pcmciautils 018
PPP 2.4.7
Bison 3.5.1
Flex 2.6.4
Linux C++ Library 6.0.28
Linux C Library 2.31
Dynamic linker (ldd) 2.31
Kbd 2.0.4
Console-tools 2.0.4
Sh-utils 8.30
Udev 245
Wireless-tools 30
Modules Loaded acpi_pad acpi_thermal_rel aesni_intel autofs4
ccm cec cfg80211 coretemp crc32_pclmul crct10dif_pclmul cryptd
crypto_simd drm drm_kms_helper e1000e efi_pstore fb_sys_fops
ghash_clmulni_intel glue_helper hid i2c_algo_bit i2c_hid i2c_i801 i915
input_leds int3400_thermal int3403_thermal int340x_thermal_zone
intel_cstate intel_pch_thermal intel_powerclamp intel_rapl_common
intel_rapl_msr intel_rapl_perf intel_soc_dts_iosf
intel_wmi_thunderbolt intel_xhci_usb_role_switch ip_tables iwlmvm
iwlwifi joydev kvm kvm_intel ledtrig_audio libarc4 lp mac80211 mac_hid
mc mei mei_hdcp mei_me msr nls_iso8859_1 nvme nvme_core nvram parport
parport_pc ppdev processor_thermal_device psmouse rmi_core rmi_smbus
roles sch_fq_codel serio_raw snd snd_hda_codec snd_hda_codec_generic
snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_core snd_hda_intel
snd_hwdep snd_intel_dspcfg snd_pcm snd_rawmidi snd_seq snd_seq_device
snd_seq_midi snd_seq_midi_event snd_timer soundcore syscopyarea
sysfillrect sysimgblt thinkpad_acpi typec typec_ucsi ucsi_acpi
uvcvideo video videobuf2_common videobuf2_memops videobuf2_v4l2
videobuf2_vmalloc videodev wmi wmi_bmof x86_pkg_temp_thermal x_tables
[8.2.] Processor information (from /proc/cpuinfo):
8 times this:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz
stepping : 10
microcode : 0xca
cpu MHz : 800.019
cache size : 8192 KB
physical id : 0
siblings : 8
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe
syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts
rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq
dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid
sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx
f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single
pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad
fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx
smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida
arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d
vmx flags : vnmi preemption_timer invvpid ept_x_only ept_ad ept_1gb
flexpriority tsc_offset vtpr mtf vapic ept vpid unrestricted_guest ple
pml ept_mode_based_exec
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass
l1tf mds swapgs itlb_multihit
bogomips : 3999.93
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
[8.3.] Module information (from /proc/modules):
psmouse 155648 0 - Live 0x0000000000000000
ccm 20480 3 - Live 0x0000000000000000
snd_hda_codec_hdmi 61440 1 - Live 0x0000000000000000
snd_hda_codec_realtek 118784 1 - Live 0x0000000000000000
snd_hda_codec_generic 81920 1 snd_hda_codec_realtek, Live 0x0000000000000000
x86_pkg_temp_thermal 20480 0 - Live 0x0000000000000000
intel_powerclamp 20480 0 - Live 0x0000000000000000
coretemp 20480 0 - Live 0x0000000000000000
i915 2174976 13 - Live 0x0000000000000000
msr 16384 0 - Live 0x0000000000000000
iwlmvm 389120 0 - Live 0x0000000000000000
kvm_intel 282624 0 - Live 0x0000000000000000
snd_hda_intel 53248 3 - Live 0x0000000000000000
snd_intel_dspcfg 24576 1 snd_hda_intel, Live 0x0000000000000000
mac80211 892928 1 iwlmvm, Live 0x0000000000000000
kvm 700416 1 kvm_intel, Live 0x0000000000000000
joydev 24576 0 - Live 0x0000000000000000
snd_hda_codec 139264 4
snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel,
Live 0x0000000000000000
snd_hda_core 94208 5
snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel,snd_hda_codec,
Live 0x0000000000000000
libarc4 16384 1 mac80211, Live 0x0000000000000000
iwlwifi 348160 1 iwlmvm, Live 0x0000000000000000
snd_hwdep 20480 1 snd_hda_codec, Live 0x0000000000000000
mei_hdcp 24576 0 - Live 0x0000000000000000
snd_pcm 114688 4
snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core, Live
0x0000000000000000
rmi_smbus 16384 0 - Live 0x0000000000000000
intel_rapl_msr 20480 0 - Live 0x0000000000000000
crct10dif_pclmul 16384 1 - Live 0x0000000000000000
uvcvideo 98304 0 - Live 0x0000000000000000
ghash_clmulni_intel 16384 0 - Live 0x0000000000000000
rmi_core 81920 1 rmi_smbus, Live 0x0000000000000000
nls_iso8859_1 16384 1 - Live 0x0000000000000000
snd_seq_midi 20480 0 - Live 0x0000000000000000
drm_kms_helper 217088 1 i915, Live 0x0000000000000000
snd_seq_midi_event 16384 1 snd_seq_midi, Live 0x0000000000000000
videobuf2_vmalloc 20480 2 uvcvideo,rmi_core, Live 0x0000000000000000
videobuf2_memops 20480 1 videobuf2_vmalloc, Live 0x0000000000000000
snd_rawmidi 36864 1 snd_seq_midi, Live 0x0000000000000000
videobuf2_v4l2 24576 2 uvcvideo,rmi_core, Live 0x0000000000000000
videobuf2_common 53248 3 uvcvideo,rmi_core,videobuf2_v4l2, Live
0x0000000000000000
aesni_intel 372736 2 - Live 0x0000000000000000
crypto_simd 16384 1 aesni_intel, Live 0x0000000000000000
cfg80211 770048 3 iwlmvm,mac80211,iwlwifi, Live 0x0000000000000000
snd_seq 69632 2 snd_seq_midi,snd_seq_midi_event, Live 0x0000000000000000
cryptd 24576 2 ghash_clmulni_intel,crypto_simd, Live 0x0000000000000000
glue_helper 16384 1 aesni_intel, Live 0x0000000000000000
intel_cstate 20480 0 - Live 0x0000000000000000
snd_seq_device 16384 3 snd_seq_midi,snd_rawmidi,snd_seq, Live 0x0000000000000000
cec 53248 2 i915,drm_kms_helper, Live 0x0000000000000000
input_leds 16384 0 - Live 0x0000000000000000
videodev 237568 4 uvcvideo,rmi_core,videobuf2_v4l2,videobuf2_common,
Live 0x0000000000000000
intel_rapl_perf 20480 0 - Live 0x0000000000000000
mei_me 40960 1 - Live 0x0000000000000000
snd_timer 40960 2 snd_pcm,snd_seq, Live 0x0000000000000000
thinkpad_acpi 110592 0 - Live 0x0000000000000000
i2c_algo_bit 16384 1 i915, Live 0x0000000000000000
fb_sys_fops 16384 1 drm_kms_helper, Live 0x0000000000000000
intel_xhci_usb_role_switch 16384 0 - Live 0x0000000000000000
nvram 16384 1 thinkpad_acpi, Live 0x0000000000000000
serio_raw 20480 0 - Live 0x0000000000000000
mei 106496 3 mei_hdcp,mei_me, Live 0x0000000000000000
ucsi_acpi 16384 0 - Live 0x0000000000000000
ledtrig_audio 16384 3
snd_hda_codec_realtek,snd_hda_codec_generic,thinkpad_acpi, Live
0x0000000000000000
efi_pstore 16384 0 - Live 0x0000000000000000
syscopyarea 16384 1 drm_kms_helper, Live 0x0000000000000000
typec_ucsi 32768 1 ucsi_acpi, Live 0x0000000000000000
processor_thermal_device 24576 0 - Live 0x0000000000000000
sysfillrect 16384 1 drm_kms_helper, Live 0x0000000000000000
intel_rapl_common 28672 2 intel_rapl_msr,processor_thermal_device,
Live 0x0000000000000000
intel_wmi_thunderbolt 20480 0 - Live 0x0000000000000000
intel_pch_thermal 16384 0 - Live 0x0000000000000000
sysimgblt 16384 1 drm_kms_helper, Live 0x0000000000000000
mc 53248 4 uvcvideo,videobuf2_v4l2,videobuf2_common,videodev, Live
0x0000000000000000
wmi_bmof 16384 0 - Live 0x0000000000000000
typec 53248 1 typec_ucsi, Live 0x0000000000000000
roles 16384 1 intel_xhci_usb_role_switch, Live 0x0000000000000000
intel_soc_dts_iosf 20480 1 processor_thermal_device, Live 0x0000000000000000
snd 94208 18 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_codec_generic,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_seq_device,snd_timer,thinkpad_acpi,
Live 0x0000000000000000
int3403_thermal 16384 0 - Live 0x0000000000000000
soundcore 16384 1 snd, Live 0x0000000000000000
int340x_thermal_zone 16384 2 processor_thermal_device,int3403_thermal,
Live 0x0000000000000000
int3400_thermal 20480 0 - Live 0x0000000000000000
acpi_thermal_rel 16384 1 int3400_thermal, Live 0x0000000000000000
acpi_pad 184320 0 - Live 0x0000000000000000
mac_hid 16384 0 - Live 0x0000000000000000
sch_fq_codel 20480 2 - Live 0x0000000000000000
drm 544768 8 i915,drm_kms_helper, Live 0x0000000000000000
parport_pc 40960 0 - Live 0x0000000000000000
ppdev 24576 0 - Live 0x0000000000000000
lp 20480 0 - Live 0x0000000000000000
parport 53248 3 parport_pc,ppdev,lp, Live 0x0000000000000000
ip_tables 32768 0 - Live 0x0000000000000000
x_tables 45056 1 ip_tables, Live 0x0000000000000000
autofs4 45056 2 - Live 0x0000000000000000
nvme 40960 2 - Live 0x0000000000000000
e1000e 253952 0 - Live 0x0000000000000000
nvme_core 106496 4 nvme, Live 0x0000000000000000
crc32_pclmul 16384 0 - Live 0x0000000000000000
i2c_i801 32768 0 - Live 0x0000000000000000
wmi 32768 2 intel_wmi_thunderbolt,wmi_bmof, Live 0x0000000000000000
i2c_hid 28672 0 - Live 0x0000000000000000
hid 135168 1 i2c_hid, Live 0x0000000000000000
video 49152 2 i915,thinkpad_acpi, Live 0x0000000000000000
[8.7.] Other information that might be relevant to the problem
(please look in /proc and include all information that you
think to be relevant):
I attach the full dmesg after a few suspends and psmouse module
removals and insertions. Some detailed descriptions of what happens
when:
Laptop is powerered on: [ 00.000000] - [ 15.924274]
Xinput shows these input devices at this point:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Synaptics TM3288-011 id=12 [slave pointer (2)]
⎜ ↳ TPPS/2 Elan TrackPoint id=13 [slave pointer (2)]
Close lid, suspend, wake up: [ 251.222484] - [ 256.281313]
Touchpad/trackpoint not working at this point; rmmod and modprobe
psmouse twice: [ 328.251883] - [ 354.249981]
Touchpad and trackpoint working now. Suspend and wake up again: [
587.807248] - [ 592.830255]
After wakeup, touchpad working. Suspend again a few times, touchpad
and trackpoint seem to work in most cases.
Around [ 778.483827] touchpad is working, but trackpoint is not
(buttons are integrated with trackpoint, so don't work either). xinput
returns:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Synaptics TM3288-011 id=12 [slave pointer (2)]
Around [ 1048.342982] issued rmmod and modprobe psmouse, everything
working again.
At the very bottom, dmesg seems to register some issues while using
the touchpad normally, mainly:
rmi4_f12 rmi4-02.fn12: Failed to read object data. Code: -6.
rmi4_physical rmi4-02: Failed to read irqs, code=-6
Please let me know what additional info you might need.
View attachment "dmesg.log" of type "text/x-log" (90825 bytes)
Download attachment "config" of type "application/octet-stream" (242899 bytes)
Powered by blists - more mailing lists