Bug 42968 (Laryllan)

Summary: Lenovo S12 doesn't suspend
Product: Drivers Reporter: laryllan
Component: USBAssignee: Greg Kroah-Hartman (greg)
Status: NEEDINFO ---    
Severity: normal CC: laryllan, lenb, stern, tianyu.lan
Priority: P1    
Hardware: i386   
OS: Linux   
Kernel Version: 3.2.0-19-generic #30-Ubuntu i686 Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 56331    
Attachments: useful information about my system

Description laryllan 2012-03-20 18:13:57 UTC
Created attachment 72660 [details]
useful information about my system

While testing Ubuntu 12.04beta I found that suspend on my Lenovo S12 netbook doesn't work anymore. It worked flawlessly on Ubuntu 11.10 which uses kernel 3.0.0-16.

I filed a bug on launchpad and was asked to submit this bug to kernel.org cause it seems to be an upstream bug:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/958496
You might find more useable data there.

I collected as much infos as I could, see the attachment.
The data attached is collected using apport and by following the guide on:
https://wiki.ubuntu.com/DebuggingKernelSuspendHibernateResume

Additionally, I included the data requested by:
http://kernel.org/pub/linux/docs/lkml/reporting-bugs.html


If there is any additional information needed, I'll gladly try to supply it.
Just ask.


Thank for your time and help,
- Laryllan
Comment 1 Len Brown 2012-03-27 01:48:42 UTC
did you follow the debugging steps in 
Documentation/power/basic-pm-debugging.txt
(in kernel source tree)?

I did not see the results of those tests in the ubuntu bug report.
Comment 2 laryllan 2012-03-28 12:45:24 UTC
Hi Len,

what exactly do you need?

I did the following tests:

# echo devices > /sys/power/pm_test
# echo platform > /sys/power/disk
# echo disk > /sys/power/state
# dmesg > /tmp/dmesg-devices-platform.txt

# echo core > /sys/power/pm_test
# echo platform > /sys/power/disk
# echo disk > /sys/power/state
# dmesg > /tmp/dmesg-core-platform.txt

# echo core > /sys/power/pm_test
# echo reboot > /sys/power/disk
# echo disk > /sys/power/state
# dmesg > /tmp/dmesg-core-reboot.txt

These tests seem to be the very same suggested in basic-pm-debugging.txt.

None of them gave any output.
You can find the dmesg logs in the attachment.
Comment 3 laryllan 2012-05-02 20:18:20 UTC
It's a problem of the hardware wireless switch.
If wireless is turned off by hardware first, suspend works flawlessly.
Comment 4 laryllan 2012-12-23 15:00:02 UTC
There is a workaround for this bug that works on the S12, see
http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug

I had to add 'ohci' to the DRIVERS= line of the script.
Comment 5 Lan Tianyu 2013-03-31 15:15:45 UTC
This script is to unbind the ohci_hcd driver when suspend and bind the driver when resume. This seems  a usb bug.
Comment 6 Lan Tianyu 2013-04-02 05:36:30 UTC
Hi Lary:
      Could you verify whether this bug exist in the latest upstream kernel(v3.9-rc5)?  

Hi Alan:
        At this point, I think this is a usb ohci driver bug. Could you have a look?
Comment 7 Alan Stern 2013-04-02 14:51:05 UTC
Is it really the WiFi device that causes the problem, or is it the Bluetooth device?  Both of them get turned off by rfkill.  Try turning off just one or the other.

Also, what happens if you do

   echo 0 >/sys/bus/usb/devices/4-2/bConfigurationValue

before starting the test?