[Lenovo V480c Notebook]: Trackpad doesn't work after closing and opening the lid

Bug #1089105 reported by Jeff Marcom
28
This bug affects 5 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Won't Fix
High
Hui Wang
Declined for Saucy by Robert Ancell
Precise
Won't Fix
Undecided
Hui Wang
Quantal
Won't Fix
Undecided
Hui Wang
Raring
Won't Fix
High
Hui Wang
pm-utils (Ubuntu)
Won't Fix
High
Unassigned
Declined for Saucy by Robert Ancell
Precise
Won't Fix
Undecided
Unassigned
Quantal
Won't Fix
Undecided
Unassigned
Raring
Won't Fix
Undecided
Unassigned

Bug Description

Problem:
System does not resume from suspend properly. The issue is intermitent. However most of the time the system will exhibit three problematic symptoms:

    1.) System will fail to resume and start x altogether
    2.) System will resume with applications in frozen state and unity unresponsive to mouse-clicks.
    3.) System will resume however trackpad will be disabled.

kernel tested: 3.2.0-29-generic #46-Ubuntu
Release: Ubuntu 12.04.1

Can reproduce? Yes

Steps:
1.) Close laptop lid
2.) wait approx 5 minutes
3.) open laptop lid for system to resume.

Expected result:
System is able to suspend state and applications and resume when lid is opened in a proper and timely fashion.

Command to recreate:
fwts_test -s s3 --s3-sleep-delay=30 --s3-device-check | tee suspend_single_times.log

WORKAROUND: Log into GNOME, and manually enable the touchpad through:
dconf-editor->/org/gnome/settings-daemon/peripherals/touchpad/touchpad-enabled

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: linux-image-3.2.0-29-generic 3.2.0-29.46
ProcVersionSignature: Ubuntu 3.2.0-29.46-generic 3.2.24
Uname: Linux 3.2.0-29-generic x86_64
NonfreeKernelModules: wl
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
ApportVersion: 2.0.1-0ubuntu12
Architecture: amd64
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: PCH [HDA Intel PCH], device 0: ALC269VC Analog [ALC269VC Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: ubuntu 1579 F.... pulseaudio
CRDA: Error: command ['iw', 'reg', 'get'] failed with exit code 1: nl80211 not found.
Card0.Amixer.info:
 Card hw:0 'PCH'/'HDA Intel PCH at 0x9b610000 irq 46'
   Mixer name : 'Intel PantherPoint HDMI'
   Components : 'HDA:10ec0269,17aa500f,00100202 HDA:80862806,80860101,00100000'
   Controls : 26
   Simple ctrls : 12
Card29.Amixer.info:
 Card hw:29 'ThinkPadEC'/'ThinkPad Console Audio Control at EC reg 0x30, fw unknown'
   Mixer name : 'ThinkPad EC (unknown)'
   Components : ''
   Controls : 1
   Simple ctrls : 1
Card29.Amixer.values:
 Simple mixer control 'Console',0
   Capabilities: pswitch pswitch-joined penum
   Playback channels: Mono
   Mono: Playback [on]
Date: Tue Dec 11 15:38:03 2012
HibernationDevice: RESUME=UUID=98d6d8c6-aa75-4069-9714-4f972d11aa61
InstallationMedia: Ubuntu 12.04.1 LTS "Precise Pangolin" - Release amd64 (20120823.1)
MachineType: LENOVO 814TF01
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB:
 0 inteldrmfb
 1 nouveaufb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-29-generic root=UUID=c1701df9-c6b6-4425-b6ec-5fede7c00ad6 ro quiet splash initcall_debug vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.2.0-29-generic N/A
 linux-backports-modules-3.2.0-29-generic N/A
 linux-firmware 1.79
SourcePackage: linux
StagingDrivers: mei
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 03/29/2012
dmi.bios.vendor: LENOVO
dmi.bios.version: H5ET26WW (0.26 )
dmi.board.asset.tag: Not Available
dmi.board.name: 814TF01
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvrH5ET26WW(0.26):bd03/29/2012:svnLENOVO:pn814TF01:pvrLenovoV480c:rvnLENOVO:rn814TF01:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 814TF01
dmi.product.version: Lenovo V480c
dmi.sys.vendor: LENOVO

Revision history for this message
Jeff Marcom (jeffmarcom) wrote :
Changed in linux (Ubuntu):
assignee: nobody → Canonical Hardware Enablement Team (canonical-hwe-team)
Jeff Marcom (jeffmarcom)
tags: added: bug-exists-upstream
tags: added: quantal
removed: bug-exists-upstream
Revision history for this message
Brad Figg (brad-figg) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Jeff Marcom (jeffmarcom) wrote : Re: [Lenovo v480c]: System fails to resume properly from suspend

exists in raring kernel 3.7.0-5

tags: added: kernel-bug-exists-upstream
Jeff Marcom (jeffmarcom)
Changed in linux (Ubuntu Precise):
assignee: nobody → Canonical Hardware Enablement Team (canonical-hwe-team)
Changed in linux (Ubuntu Quantal):
assignee: nobody → Canonical Hardware Enablement Team (canonical-hwe-team)
summary: - [Lenovo v480c]: System fails to resume properly from suspend
+ [Lenovo v480c, v580c]: System fails to resume properly from suspend
Revision history for this message
Ara Pulido (ara) wrote : Re: [Lenovo v480c, v580c]: System fails to resume properly from suspend

Jeff, it'd be good if you could run the 30 cycles suspend/resume and attach the log here, as it can give clues on what's wrong on this system

Changed in linux (Ubuntu Precise):
status: New → Incomplete
Revision history for this message
Jeff Marcom (jeffmarcom) wrote :

Suspend log with failures.

Changed in linux (Ubuntu Precise):
status: Incomplete → New
summary: - [Lenovo v480c, v580c]: System fails to resume properly from suspend
+ [Lenovo v480c, v580c, B480]: System fails to resume properly from
+ suspend
Revision history for this message
Jeff Marcom (jeffmarcom) wrote : Re: [Lenovo v480c, v580c, B480]: System fails to resume properly from suspend

Attaching syslog as well.

I also noticed that the touchpad is disable upon resume.

This requires you to do the following to regain trackpad functionality:

sudo rmmod psmouse && modprobe psmouse

Revision history for this message
James M. Leddy (jm-leddy) wrote :

We've fixed problem #3 in oem enablement by working around it with a pm-script. Have to investigate if we can fix this properly or if we must use the pm-script workaround.

Problems #1, #2 are new to us.

Changed in linux (Ubuntu Precise):
assignee: Canonical Hardware Enablement Team (canonical-hwe-team) → Manoj Iyer (manjo)
Changed in linux (Ubuntu Quantal):
assignee: Canonical Hardware Enablement Team (canonical-hwe-team) → Manoj Iyer (manjo)
Changed in linux (Ubuntu Raring):
assignee: Canonical Hardware Enablement Team (canonical-hwe-team) → Manoj Iyer (manjo)
Ara Pulido (ara)
tags: added: blocks-hwcert-enablement
Changed in linux (Ubuntu Precise):
assignee: Manoj Iyer (manjo) → Ayan George (ayan)
Changed in linux (Ubuntu Quantal):
assignee: Manoj Iyer (manjo) → Ayan George (ayan)
Changed in linux (Ubuntu Raring):
assignee: Manoj Iyer (manjo) → Ayan George (ayan)
Revision history for this message
Yang Kun (YK) (dayangkuncn) wrote :

@haitao, hi haitao, could you please help to investigate this bug ?

Changed in linux (Ubuntu Precise):
assignee: Ayan George (ayan) → Haitao Zhang (minipanda)
Changed in linux (Ubuntu Quantal):
assignee: Ayan George (ayan) → Haitao Zhang (minipanda)
Changed in linux (Ubuntu Raring):
assignee: Ayan George (ayan) → Haitao Zhang (minipanda)
Changed in linux (Ubuntu Raring):
importance: Undecided → High
Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in linux (Ubuntu Precise):
status: New → Confirmed
Changed in linux (Ubuntu Quantal):
status: New → Confirmed
Revision history for this message
Haitao Zhang (minipanda) wrote :

1. errors from suspend_30_cycles.log in #5 is due to ACPI LED Method in this BIOS expects 1 argument while the kernel driver thinkpad-acpi.c calls it with two arguments, should not be the root cause of this suspend issue.
2. if possible, @Jeff, could you please help to ship the machine locally to help debug?

Changed in linux (Ubuntu):
importance: High → Undecided
Daniel Manrique (roadmr)
Changed in linux (Ubuntu):
importance: Undecided → High
Changed in linux (Ubuntu):
importance: High → Undecided
Daniel Manrique (roadmr)
Changed in linux (Ubuntu):
importance: Undecided → High
Changed in linux (Ubuntu):
importance: High → Undecided
Daniel Manrique (roadmr)
Changed in linux (Ubuntu):
importance: Undecided → High
Revision history for this message
Yang Kun (YK) (dayangkuncn) wrote :

@Jeff, @Daniel, @Brendan,

Hi Jeff/Daniel/Brendan, is it possible that the cert team could ship this machine to Haitao for debugging ? Or if it's not convenient to ship the machine, could cert team help to set up the remote access for Haitao to access this machine remotely to debug ?

Thanks
-YK

Revision history for this message
Kevin Waddle (kevin-waddle) wrote :

Affecting me now as well after upgrading from 12.10 to 13.04 on a Lenovo X230. Never had the problem while on 12.10

Revision history for this message
Haitao Zhang (minipanda) wrote :

Hi, I've got the V480c laptop and will start tracing more.

Changed in linux (Ubuntu Precise):
status: Confirmed → In Progress
Revision history for this message
Haitao Zhang (minipanda) wrote :

Test v480c with latest 12.04.2 LTS, S3 test passed with only ACPI errors, which won't affect S3 test at all.
but touchpad stopped working, will run S3 test for Raring release

Revision history for this message
penalvch (penalvch) wrote : Re: [Lenovo V480c Notebook]: System fails to resume properly from suspend

Jeff Marcom, as per http://support.lenovo.com/en_US/downloads/default.page? an update is available for your BIOS (1.16). If you update to this, does it change anything?

If not, could you please both specify what happened, and provide the output of the following terminal command:
sudo dmidecode -s bios-version && sudo dmidecode -s bios-release-date

Thank you for your understanding.

tags: added: bios-outdated-1.16 needs-upstream-testing
summary: - [Lenovo v480c, v580c, B480]: System fails to resume properly from
- suspend
+ [Lenovo V480c Notebook]: System fails to resume properly from suspend
tags: added: regression-potential
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Changed in linux (Ubuntu):
assignee: Haitao Zhang (minipanda) → Hui Wang (hui.wang)
Changed in linux (Ubuntu Precise):
assignee: Haitao Zhang (minipanda) → Hui Wang (hui.wang)
Changed in linux (Ubuntu Quantal):
assignee: Haitao Zhang (minipanda) → Hui Wang (hui.wang)
Changed in linux (Ubuntu Raring):
assignee: Haitao Zhang (minipanda) → Hui Wang (hui.wang)
Revision history for this message
Hui Wang (hui.wang) wrote :

@penalvch, the output of the dmidecode command is

#sudo dmidecode -s bios-version
H5ET26WW (0.26)
#
#sudo dmidecode -s bios-release-date
03/29/2012

Revision history for this message
Hui Wang (hui.wang) wrote :

Installed sutton-precise-amd64-20130916-0 on the lenovo-v480c, and ran the s3 stress test, below two problems disappeared.
    1.) System will fail to resume and start x altogether
    2.) System will resume with applications in frozen state and unity unresponsive to mouse-clicks.

But the third problem has been reproduced.
 3.) System will resume however trackpad will be disabled.

And i found this problem has nothing to do with kernel or driver, since even the trackpad can't work in the xwindows, it still can work well from the kernel/driver side.

When the trackpad can't work in the xwindows, i executed "sudo cat /dev/input/mouse0", it will transport lots of data to userspace when i touch the trackpad.

Revision history for this message
Hui Wang (hui.wang) wrote :

Through debugging, I found when the lid was closed, the system/kernel will generate a TOUCHPAD_KEY (XF86TouchpadToggle) by a mistake, the gnome-settings-daemon->media-keys-plugin will capture this key and toggle the touchpad enable/disable through gnome-settings-daemon->mouse-plugin.

On other machines, closing lid won't generate TOUCHPAD_KEY event, so the touchpad doesn't has this problem.

Revision history for this message
Hui Wang (hui.wang) wrote :

I found the root cause for this problem

This machine has touchpad toggle function key (Fn+F6), its physical
scancode is 0xe0 0x71, its translated scancode is 0xf1, and udev rules
activates this function key in the /lib/udev/rules.d/95-keymap.rules:
ENV{DMI_VENDOR}=="LENOVO", ATTR{[dmi/id]product_version}=="*Lenovo V480*", RUN+="keymap $name 0xf1 f21"

Unfortunately, when we close the lid, the i8042 also generate the physical
scancode "0xe0 0x71", this scancode is translated to the touchpad toggle event
and passed to the gnome-settings-daemon, so the touchpad can't work under xwindows.

I did a test on a Dell laptop (inspiron 7250) which also has touchpad toggle function
key and this key is activated by udev as well, on this machine, closing lid won't
make i8042 geneate the physical scancode "0xe0 0x71", so this machine does't
has this problem.

Revision history for this message
Hui Wang (hui.wang) wrote :

Upgraded the BIOS to version 1.16 according to the comment #16, re-did the test, the problem still can be reproduced.

Revision history for this message
Hui Wang (hui.wang) wrote :

On this machine, when closing the lid, the i8042 will generate a touchpad
toggle key event, while opeing the lid, the i8042 also generate a touchpad
toggle key event.

If users close the lid under the gnome environment, the touchpad toggle
key event will be captured by the gnome-settings-daemon, so the touchpad
is disabled by the daemon, when users open the lid, the system will go to
the login window (gnome-screensaver), so the touchpad toggle key event
generated by opening lid doesn't pass to gnome-settings-daemon, so the
touchpad doesn't restore to the original status.

There is a workaound, logging into the gnome, manually enable the touchpad
through:
dconf-editor->/org/gnome/settings-daemon/peripherals/touchpad/touchpad-enabled.

If we really want to fix this problem, we need to modify gnome-screensaver to
pass the function key event to gnome-settings-daemon, there is already a bug
to track this problem, the bug is 191041.

Not all laptop have this problem, most laptops don't generate touchpad
toggle key event when closing and opening the lid, so those machines don't
have this problem. Some laptops generate the touchpad toogle key event
when closing and opening the lid, but the touchpad toogle key isn't
activated by the udev, those machines don't have this problem as well.

An easy way to identify whether the machine has this problem is:
booting to gnome environment, pressing ALT+CTRL+F1 to enter text console,
executing showkey, closing lid, waiting several seconds, opening the lid,
if following logs are produced, your machine will have this problem.

keycode 191 press
keycode 191 release
keycode 191 press
keycode 191 release

summary: - [Lenovo V480c Notebook]: System fails to resume properly from suspend
+ [Lenovo V480c Notebook]: System fails to resume properly from suspend or
+ trackpad doesn't work after resume
Revision history for this message
Anthony Wong (anthonywong) wrote : Re: [Lenovo V480c Notebook]: System fails to resume properly from suspend or trackpad doesn't work after resume

I am adding pm-utils to this bug as it may be one way to solve the touchpad issue.

Martin, what is your opinion in solving the touchpad issue on some Lenovo notebooks in pm-utils?

Daniel Manrique (roadmr)
Changed in pm-utils (Ubuntu):
importance: Undecided → High
Revision history for this message
Po-Hsu Lin (cypressyew) wrote :

This problem still exist in 12.04.3 + 3.8.0-33

tags: added: 201204-10924 taipei-lab
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Anthony Wong (anthonywong) wrote :

Also affects 'lightdm' as it might be used for replace gnome-screensaver in 14.04 (https://wiki.ubuntu.com/Unity/Desktop/14.04/Unity7GreeterPolish/LockScreen)

Changed in lightdm (Ubuntu Precise):
status: New → Invalid
Changed in lightdm (Ubuntu Quantal):
status: New → Invalid
Changed in lightdm (Ubuntu Raring):
status: New → Invalid
Hui Wang (hui.wang)
summary: - [Lenovo V480c Notebook]: System fails to resume properly from suspend or
- trackpad doesn't work after resume
+ [Lenovo V480c Notebook]: Trackpad doesn't work after closing the lib and
+ opening the lib
summary: - [Lenovo V480c Notebook]: Trackpad doesn't work after closing the lib and
- opening the lib
+ [Lenovo V480c Notebook]: Trackpad doesn't work after closing and opening
+ the lib
summary: [Lenovo V480c Notebook]: Trackpad doesn't work after closing and opening
- the lib
+ the lid
penalvch (penalvch)
tags: added: latest-bios-1.16
removed: bios-outdated-1.16
description: updated
Revision history for this message
Po-Hsu Lin (cypressyew) wrote :

Verified with Trusty dailylive image (kernel 3.13.0-5) on 201204-10924

Trackpad works fine after closing and opening the lid.
Left/right click, drag, two-finger scroll and multitouch all works fine.

Steps:
1. Install dailylive image and boot to desktop
2. Suspend the system by closing the lid.
3. Wait for approx. 5 min.
4. Open the lid, check if the trackpad works.

Expected results:
* Touchpad should work after resumed from suspend.

Actual result:
* It works as expected.

Revision history for this message
Hui Wang (hui.wang) wrote :

An easy way to identify whether the machine has this problem is:
booting to gnome environment, pressing ALT+CTRL+F1 to enter text console,
executing showkey, closing lid, waiting several seconds, opening the lid,
if following logs are produced, your machine will have this problem.

keycode 191 press
keycode 191 release
keycode 191 press
keycode 191 release

Revision history for this message
Po-Hsu Lin (cypressyew) wrote :

Still affecting 12.04.4 (3.11.0-15), series nominated.

Revision history for this message
Joseph Salisbury (jsalisbury) wrote : Closing unsupported series nomination.

This bug was nominated against a series that is no longer supported, ie raring. The bug task representing the raring nomination is being closed as Won't Fix.

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

Changed in linux (Ubuntu Raring):
status: Confirmed → Won't Fix
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

This bug was nominated against a series that is no longer supported, ie quantal. The bug task representing the quantal nomination is being closed as Won't Fix.

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

Changed in linux (Ubuntu Quantal):
status: Confirmed → Won't Fix
Revision history for this message
Hui Wang (hui.wang) wrote :

There is no this problem under Trusty (14.04), since the udev has removed the below keymap:

ENV{DMI_VENDOR}=="LENOVO", ATTR{[dmi/id]product_version}=="*Lenovo V480*", RUN+="keymap $name 0xf1 f21"

Revision history for this message
Hui Wang (hui.wang) wrote :

In the latest ubuntu precise (12.04.5), the udev version is 175-0ubuntu9.8, and the keymap in the #31 still exists in this version udev, so this problem still happens on the V480c machines with latest ubuntu precise installed.

But this is not a linux kernel bug, I think it is a lightm defect, and can be workaround through udev keymap rules.

And since we already have 14.04LTS and there is no this problem in the 14.04 and onwards version, set won't fix for precise (12.04).

Changed in linux (Ubuntu Precise):
status: In Progress → Won't Fix
Changed in linux (Ubuntu):
status: Confirmed → Won't Fix
Revision history for this message
Rolf Leggewie (r0lf) wrote :

quantal has seen the end of its life and is no longer receiving any updates. Marking the quantal task for this ticket as "Won't Fix".

Changed in pm-utils (Ubuntu Quantal):
status: New → Won't Fix
Revision history for this message
Rolf Leggewie (r0lf) wrote :

raring has seen the end of its life and is no longer receiving any updates. Marking the raring task for this ticket as "Won't Fix".

Changed in pm-utils (Ubuntu Raring):
status: New → Won't Fix
no longer affects: lightdm (Ubuntu)
no longer affects: lightdm (Ubuntu Precise)
no longer affects: lightdm (Ubuntu Raring)
no longer affects: lightdm (Ubuntu Quantal)
Revision history for this message
Po-Hsu Lin (cypressyew) wrote :

Precise EOL.

Changed in pm-utils (Ubuntu Precise):
status: New → Won't Fix
Changed in pm-utils (Ubuntu):
status: New → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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