Suspend/hibernate doesn't work on an Asus laptop

19,782

Solution 1

This appears to be a common issue on many ASUS laptops. Try this:

Source: http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug

Run this in a terminal:

gksu gedit /etc/pm/sleep.d/20_custom-ehci_hcd 

Copy and Paste the contents of the following into the text editor:

#!/bin/sh
#inspired by http://art.ubuntuforums.org/showpost.php?p=9744970&postcount=19
#...and http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug    
# tidied by tqzzaa :)

VERSION=1.1
DEV_LIST=/tmp/usb-dev-list
DRIVERS_DIR=/sys/bus/pci/drivers
DRIVERS="ehci xhci" # ehci_hcd, xhci_hcd
HEX="[[:xdigit:]]"
MAX_BIND_ATTEMPTS=2
BIND_WAIT=0.1

unbindDev() {
  echo -n > $DEV_LIST 2>/dev/null
  for driver in $DRIVERS; do
    DDIR=$DRIVERS_DIR/${driver}_hcd
    for dev in `ls $DDIR 2>/dev/null | egrep "^$HEX+:$HEX+:$HEX"`; do
      echo -n "$dev" > $DDIR/unbind
      echo "$driver $dev" >> $DEV_LIST
    done
  done
}

bindDev() {
  if [ -s $DEV_LIST ]; then
    while read driver dev; do
      DDIR=$DRIVERS_DIR/${driver}_hcd
      while [ $((MAX_BIND_ATTEMPTS)) -gt 0 ]; do
          echo -n "$dev" > $DDIR/bind
          if [ ! -L "$DDIR/$dev" ]; then
            sleep $BIND_WAIT
          else
            break
          fi
          MAX_BIND_ATTEMPTS=$((MAX_BIND_ATTEMPTS-1))
      done  
    done < $DEV_LIST
  fi
  rm $DEV_LIST 2>/dev/null
}

case "$1" in
  hibernate|suspend) unbindDev;;
  resume|thaw)       bindDev;;
esac

Save, then

sudo chmod 755 /etc/pm/sleep.d/20_custom-ehci_hcd

Solution 2

Just an additional data point:

I have an ASUS UL20FT, running Xubuntu 11.04. Suspend was working fine until recently. The Caps Lock LED would flash every time I tried to suspend. I'm told this was an indication of a kernel crash.

Tried the above script, but it didn't work for me. /var/log/pm-suspend.log didn't show any errors (except for the failures in networkmanager and wpa_supplicant, which were transient).

It turned out the culprit was the kernel modules loaded by Virtualbox-4.1.

I removed Virtualbox and everything worked again.

Solution 3

I have an asus U46E RAL-7 laptop. After adding nolapic on the GRUB_CMDLINE_LINUX_DEFAULT line, it works beautifully.

Solution 4

Thank you fossfreedom! That script fixed suspend problems on my Asus 1225B. I'm still going to try it for 1215N and 1215B and report back here.

One small addition... I had the laptop (1225B) set to suspend when I closed the lid, which worked. But immediately after suspending, it would resume (with the lid still closed). It didn't do the same if I suspended some other way.

Here's how to fix suspending/waking up using the lid on an Asus 1225B:

  1. Enable the BIOS option to wake up on lid
  2. Disable the LID wakeup option in /proc/acpi/wakeup:
    • Use acpitool (see acpitool --help)

This is the only way I got it to work properly.

Share:
19,782

Related videos on Youtube

b1kjsh
Author by

b1kjsh

Updated on September 18, 2022

Comments

  • b1kjsh
    b1kjsh over 1 year

    I'm having issues suspending Ubuntu 11.04 (Natty Narwhal) on my new Asus U30SD-XA1 laptop. It's a new laptop on the market. Is this a known issue and is there a fix for it?

    Basically, whenever I close or put the laptop to sleep, the screen goes black but the video card doesn't actually turn off, and then the fan spins even faster than before and gets hot.

    I did see that some people were having similar issues on other laptops and they set the kernel back. I'm newish to Ubuntu, and I'm not super comfortable messing with the kernel.

    I am not using the 520M Nvidia driver, because it won't load Unity after it's installed. I've also heard quite a few bad things about the drivers on the Ubuntu forums, so I deactivated the driver.

    • b1kjsh
      b1kjsh almost 13 years
      I should probably add that I am not using the 520m nvidia driver because it won't load unity after it's installed. I've also heard quite a few bad things about the drivers on the ubuntu forums, so I deactivated the driver.
  • b1kjsh
    b1kjsh almost 13 years
    Wow that worked. Thank you so much! :D Now I've just gotta find a fix for my volume buttons. Thanks @fossfreedom!
  • igx
    igx over 8 years
    That worked also on my dell xps-15 . I also add this line that I read somewhere . GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.enable_ips=0"
  • brauliobo
    brauliobo over 8 years
    this made it work but completely broke the touchpad on my asus rog gl552vw using archlinux with kernel 4.3.3, so not an option :(
  • brauliobo
    brauliobo over 8 years
    incredible, five years later this made it work for my asus rog gl552vw on archlinux 4.3.3